This repository has been archived on 2023-08-16. You can view files and clone it, but cannot push or open issues or pull requests.
Foodloop-Server/lib/Pear/LocalLoop/Schema/Result/Topic.pm

60 lines
1.3 KiB
Perl
Raw Normal View History

package Pear::LocalLoop::Schema::Result::Topic;
use strict;
use warnings;
use base 'DBIx::Class::Core';
2021-03-20 12:09:50 +00:00
__PACKAGE__->load_components(
qw/
InflateColumn::DateTime
TimeStamp
FilterColumn
/
);
__PACKAGE__->table("topics");
__PACKAGE__->add_columns(
2021-03-20 12:09:50 +00:00
"id" => {
data_type => "integer",
is_auto_increment => 1,
is_nullable => 0,
},
2021-03-21 16:34:08 +00:00
"organisation_id" => {
data_type => "integer",
is_foreign_key => 1,
is_nullable => 1,
},
2021-03-20 12:09:50 +00:00
"name" => {
data_type => "varchar",
size => 200,
is_nullable => 0,
},
);
__PACKAGE__->set_primary_key("id");
2021-03-21 16:34:08 +00:00
__PACKAGE__->belongs_to(
"organisation",
"Pear::LocalLoop::Schema::Result::Organisation",
{ id => "organisation_id" },
{ is_deferrable => 0, on_delete => "NO ACTION", on_update => "NO ACTION" },
);
__PACKAGE__->has_many(
2021-03-25 13:54:04 +00:00
"user_topic_subscriptions",
"Pear::LocalLoop::Schema::Result::UserTopicSubscription",
2021-03-20 12:09:50 +00:00
{ "foreign.topic_id" => "self.id" },
{ cascade_copy => 0, cascade_delete => 0 },
);
2021-03-20 12:09:50 +00:00
__PACKAGE__->many_to_many(
2021-03-25 13:54:04 +00:00
'users' => 'user_topic_subscriptions',
'user'
2021-03-20 12:09:50 +00:00
);
2021-03-25 13:54:04 +00:00
__PACKAGE__->many_to_many( 'topics' => 'user_topic_subscriptions', 'topic' );
1;