]>
Dogcows Code - chaz/p5-DBIx-Class-ResultSet-RecursiveUpdate/blob - t/lib/DBICTest/Schema/CD.pm
1 package # hide from PAUSE
4 use base
'DBIx::Class::Core';
6 __PACKAGE__-
>table('cd');
7 __PACKAGE__-
>add_columns(
9 data_type
=> 'integer',
10 is_auto_increment
=> 1,
13 data_type
=> 'integer',
16 data_type
=> 'varchar',
20 data_type
=> 'varchar',
24 data_type
=> 'integer',
28 data_type
=> 'integer',
33 __PACKAGE__-
>set_primary_key('cdid');
34 __PACKAGE__-
>add_unique_constraint([ qw
/artist title/ ]);
36 __PACKAGE__-
>belongs_to( artist
=> 'DBICTest::Schema::Artist', undef, {
40 # in case this is a single-cd it promotes a track from another cd
41 __PACKAGE__-
>belongs_to( single_track
=> 'DBICTest::Schema::Track' );
43 __PACKAGE__-
>has_many( tracks
=> 'DBICTest::Schema::Track' );
44 __PACKAGE__-
>has_many(
45 tags
=> 'DBICTest::Schema::Tag', undef,
46 { order_by
=> 'tag' },
48 __PACKAGE__-
>has_many(
49 cd_to_producer
=> 'DBICTest::Schema::CD_to_Producer' => 'cd'
52 __PACKAGE__-
>might_have(
53 liner_notes
=> 'DBICTest::Schema::LinerNotes', undef,
54 { proxy
=> [ qw
/notes/ ] },
56 __PACKAGE__-
>might_have(artwork
=> 'DBICTest::Schema::Artwork', 'cd_id');
58 __PACKAGE__-
>many_to_many( producers
=> cd_to_producer
=> 'producer' );
59 __PACKAGE__-
>many_to_many(
60 producers_sorted
=> cd_to_producer
=> 'producer',
61 { order_by
=> 'producer.name' },
64 __PACKAGE__-
>belongs_to('genre', 'DBICTest::Schema::Genre',
65 { 'foreign.genreid' => 'self.genreid' },
68 on_delete
=> 'SET NULL',
69 on_update
=> 'CASCADE',
74 #__PACKAGE__->add_relationship('genre', 'DBICTest::Schema::Genre',
75 # { 'foreign.genreid' => 'self.genreid' },
76 # { 'accessor' => 'single' }
79 __PACKAGE__-
>resultset_class( __PACKAGE__
. '::ResultSet');
81 package DBICTest
::Schema
::CD
::ResultSet
;
83 use base
qw( DBIx::Class::ResultSet::RecursiveUpdate );
This page took 0.036368 seconds and 4 git commands to generate.