#!/usr/bin/perl package MyDB::Users; use base 'MyDB::DBI'; MyDB::Users->table('USERS'); MyDB::Users->columns( All => qw/USERNAME PASS USERTYPE EMAIL/); MyDB::Users->might_have( CANDIDATE => 'MyDB::Candidates' => qw/FIRSTNAME LASTNAME DISABLED CV/); MyDB::Users->might_have( CLIENT => 'MyDB::Clients' => qw/NAME MAXROLES MAXCOMPETENCIES/); 1; #### #!/usr/bin/perl package MyDB::Candidates; use base 'MyDB::DBI'; use MyDB::Users; MyDB::Candidates->table('CANDIDATES'); MyDB::Candidates->columns( All => qw/USERNAME FIRSTNAME LASTNAME DISABLED/ ); MyDB::Candidates->is_a( USERNAME => 'MyDB::Users' ); 1; #### #!/usr/bin/perl package MyDB::Clients; use base 'MyDB::DBI'; use MyDB::Users; MyDB::Clients->table('CLIENTS'); MyDB::Clients->columns( All => qw/USERNAME NAME MAXROLES MAXCOMPETENCIES/); MyDB::Clients->is_a( USERNAME => 'MyDB::Users'); 1; #### my @objs = MyDB::Clients->retrieve_all();