File Coverage

blib/lib/Interchange6/Schema/Result/NavigationAttribute.pm
Criterion Covered Total %
statement 6 6 100.0
branch n/a
condition n/a
subroutine 2 2 100.0
pod n/a
total 8 8 100.0


line stmt bran cond sub pod time code
1 2     2   1268 use utf8;
  2         9  
  2         15  
2              
3             package Interchange6::Schema::Result::NavigationAttribute;
4              
5             =head1 NAME
6              
7             Interchange6::Schema::Result::NavigationAttribute
8              
9             =cut
10              
11 2     2   101 use Interchange6::Schema::Candy;
  2         6  
  2         17  
12              
13             =head1 DESCRIPTION
14              
15             Linker table for connecting the L<Interchange6::Schema::Result::Navigation> class
16             to the <Interchange6::Schema::Result::Attribute> class records.
17              
18             =head1 ACCESSORS
19              
20             =head2 navigation_attributes_id
21              
22             Primary key.
23              
24             =cut
25              
26             primary_column navigation_attributes_id => {
27             data_type => "integer",
28             is_auto_increment => 1,
29             sequence => "navigation_attributes_navigation_attributes_id_seq",
30             };
31              
32             =head2 navigation_id
33              
34             Foreign key constraint on L<Interchange6::Schema::Result::Navigation/navigation_id>
35             via L</navigation> relationship.
36              
37             =cut
38              
39             column navigation_id => {
40             data_type => "integer",
41             };
42              
43             =head2 attributes_id
44              
45             Foreign key constraint on L<Interchange6::Schema::Result::Attribute/attribute_id>
46             via L</attribute> relationship.
47              
48             =cut
49              
50             column attributes_id => {
51             data_type => "integer",
52             };
53              
54             =head1 UNIQUE CONSTRAINT
55              
56             =head2 navigation_id_attributes_id
57              
58             =over 4
59              
60             =item * L</navigation_id>
61              
62             =item * L</attributes_id>
63              
64             =back
65              
66             =cut
67              
68             unique_constraint navigation_id_attributes_id =>
69             [qw/navigation_id attributes_id/];
70              
71             =head1 RELATIONS
72              
73             =head2 navigation
74              
75             Type: belongs_to
76              
77             Related object: L<Interchange6::Schema::Result::Navigation>
78              
79             =cut
80              
81             belongs_to
82             navigation => "Interchange6::Schema::Result::Navigation",
83             "navigation_id",
84             { is_deferrable => 1, on_delete => "CASCADE", on_update => "CASCADE" };
85              
86             =head2 attribute
87              
88             Type: belongs_to
89              
90             Related object: L<Interchange6::Schema::Result::Attribute>
91              
92             =cut
93              
94             belongs_to
95             attribute => "Interchange6::Schema::Result::Attribute",
96             "attributes_id",
97             { is_deferrable => 1, on_delete => "CASCADE", on_update => "CASCADE" };
98              
99             =head2 navigation_attribute_values
100              
101             Type: has_many
102              
103             Related object: L<Interchange6::Schema::Result::NavigationAttributeValue>
104              
105             =cut
106              
107             has_many
108             navigation_attribute_values =>
109             "Interchange6::Schema::Result::NavigationAttributeValue",
110             "navigation_attributes_id",
111             { cascade_copy => 0, cascade_delete => 0 };
112              
113             1;