X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Flib%2FDBICTest%2FSchema%2FTreeLike.pm;h=365571d8ab0675916d67a568f1be11b8acf55b42;hb=64cdad22d9b4022de379ae43174c15ce8dc81b59;hp=73f91435974125d3d858c503badc7628272bc278;hpb=ff657a4317312f9fc858e128affaf97aa46c336b;p=dbsrgits%2FDBIx-Class.git diff --git a/t/lib/DBICTest/Schema/TreeLike.pm b/t/lib/DBICTest/Schema/TreeLike.pm index 73f9143..365571d 100644 --- a/t/lib/DBICTest/Schema/TreeLike.pm +++ b/t/lib/DBICTest/Schema/TreeLike.pm @@ -6,13 +6,23 @@ use base qw/DBIx::Class::Core/; __PACKAGE__->table('treelike'); __PACKAGE__->add_columns( 'id' => { data_type => 'integer', is_auto_increment => 1 }, - 'parent' => { data_type => 'integer' }, + 'parent' => { data_type => 'integer' , is_nullable=>1}, 'name' => { data_type => 'varchar', size => 100, }, ); __PACKAGE__->set_primary_key(qw/id/); -__PACKAGE__->belongs_to('parent', 'DBICTest::Schema::TreeLike', +__PACKAGE__->belongs_to('parent', 'TreeLike', { 'foreign.id' => 'self.parent' }); +__PACKAGE__->has_many('children', 'TreeLike', { 'foreign.parent' => 'self.id' }); +## since this is a self referential table we need to do a post deploy hook and get +## some data in while constraints are off + + sub sqlt_deploy_hook { + my ($self, $sqlt_table) = @_; + + ## We don't seem to need this anymore, but keeping it for the moment + ## $sqlt_table->add_index(name => 'idx_name', fields => ['name']); + } 1;