package DBI::Page; use base 'DBI::Sec_scheduler'; __PACKAGE__->table('page'); __PACKAGE__->columns(All => ( "page_id", "page_title", ) ); __PACKAGE__->has_many(cols => 'DBI::Column'); 1; #### package DBI::Page_column; use base 'DBI::Sec_scheduler'; __PACKAGE__->table('page_column'); __PACKAGE__->columns(All => ( "page_id", "column_id", ) ); __PACKAGE__->has_a(page_id => 'DBI::Page'); __PACKAGE__->has_a(column_id => 'DBI::Column'); 1; #### package DBI::Column; use base 'DBI::Sec_scheduler'; __PACKAGE__->table('column'); __PACKAGE__->columns(All => ( "column_id", "column_title", ) ); __PACKAGE__->has_many(pages => 'DBI::Page'); 1; #### #!/usr/bin/perl use strict; use warnings; use Data::Dumper; use lib '/home/rohan/work/sec_scheduler/modules'; use sec_scheduler; my $p = DBI::Page->retrieve(page_id => 1); print Dumper($p->cols);