Rose::DB::Object::MetadataRose::DB::Object::Metadata is a database object metadata. | |
Download |
Rose::DB::Object::Metadata Ranking & Summary
Advertisement
- License:
- Perl Artistic License
- Price:
- FREE
- Publisher Name:
- John C. Siracusa
- Publisher web site:
- http://search.cpan.org/~jsiracusa/
Rose::DB::Object::Metadata Tags
Rose::DB::Object::Metadata Description
Rose::DB::Object::Metadata is a database object metadata. Rose::DB::Object::Metadata is a database object metadata.SYNOPSIS use Rose::DB::Object::Metadata; $meta = Rose::DB::Object::Metadata->new(class => 'Product'); # ...or... $meta = Rose::DB::Object::Metadata->for_class('Product'); # # Auto-initialization # $meta->table('products'); # optional if class name ends with "::Product" $meta->auto_initialize; # # ...or manual setup # $meta->setup ( table => 'products', columns => , default => 'inactive', }, start_date => { type => 'datetime' }, end_date => { type => 'datetime' }, date_created => { type => 'timestamp', default => 'now' }, last_modified => { type => 'timestamp', default => 'now' }, ], unique_key => 'name', foreign_keys => , relationships => , ); # # ...or even more verbose manual setup (old-style, not recommended) # $meta->table('products'); $meta->columns ( id => { type => 'int', primary_key => 1 }, name => { type => 'varchar', length => 255 }, description => { type => 'text' }, category_id => { type => 'int' }, status => { type => 'varchar', check_in => , default => 'inactive', }, start_date => { type => 'datetime' }, end_date => { type => 'datetime' }, date_created => { type => 'timestamp', default => 'now' }, last_modified => { type => 'timestamp', default => 'now' }, ); $meta->unique_key('name'); $meta->foreign_keys ( category => { class => 'Category', key_columns => { category_id => 'id', } }, ); $meta->relationships ( prices => { type => 'one to many', class => 'Price', column_map => { id => 'id_product' }, }, ); ... Requirements: · Perl
Rose::DB::Object::Metadata Related Software