Commit | Line | Data |
772c89c1 |
1 | package # hide from PAUSE |
2 | RestrictByUserTest::Schema::Users; |
3 | |
4 | use base 'DBIx::Class'; |
5 | |
6 | __PACKAGE__->load_components('Core'); |
7 | __PACKAGE__->table('test_users'); |
8 | __PACKAGE__->add_columns( |
9 | 'id' => { |
10 | data_type => 'int', |
11 | is_nullable => 0, |
12 | is_auto_increment => 1, |
13 | }, |
14 | 'name' => { |
15 | data_type => 'varchar', |
16 | size => 40, |
17 | } |
18 | ); |
19 | |
20 | __PACKAGE__->set_primary_key('id'); |
21 | __PACKAGE__->has_many("notes", "Notes", { "foreign.user_id" => "self.id" }); |
22 | |
23 | sub restrict_Notes_resultset { |
24 | my $self = shift; #the User object |
25 | my $unrestricted_rs = shift; |
26 | |
27 | return $self->related_resultset('notes'); |
28 | } |
29 | |
30 | sub restrict_MY_Notes_resultset { |
31 | my $self = shift; #the User object |
32 | my $unrestricted_rs = shift; |
33 | |
34 | return $unrestricted_rs->search_rs( { user_id => $self->id } ); |
35 | } |
36 | |
37 | 1; |