FreeBSD Manual Pages
DBIx::Class::MooseColuUser3Contributed Perl DocumeDBIx::Class::MooseColumns(3) NAME DBIx::Class::MooseColumns - Lets you write DBIC add_column() definitions as attribute options VERSION Version 0.22 SYNOPSIS package MyApp::Schema::Result::Artist; use Moose; use DBIx::Class::MooseColumns; use namespace::autoclean; extends 'DBIx::Class::Core'; __PACKAGE__->table('artist'); has id => ( isa => 'Int', is => 'rw', add_column => { is_auto_increment => 1, }, ); has foo => ( isa => 'Str', is => 'rw', add_column => { data_type => 'datetime' }, ); has bar => ( # will call __PACKAGE__->add_column({}) isa => 'Str', is => 'rw', add_column => { }, ); has quux => ( # no __PACKAGE__->add_column() call isa => 'Str', is => 'rw', ); __PACKAGE__->set_primary_key('id'); __PACKAGE__->meta->make_immutable( inline_constructor => 0 ); 1; DISCLAIMER This is ALPHA SOFTWARE. Use at your own risk. Features may change. DESCRIPTION This module allows you to put the arguments to "add_column" in DBIx::Class::ResultSource right into your attribute definitions and will automatically call it when it finds an "add_column" attribute option. It also replaces the DBIx::Class-generated accessor methods (these are Class::Accessor::Grouped-generated accessor methods under the hood) with the Moose-generated accessor methods so that you can use more of the wonderful powers of Moose (eg. type constraints, triggers, ...). Note: "__PACKAGE__->table(...)" must go before the "has" stanzas (the "table" in DBIx::Class::ResultSource is magic and does much more than setting the table name, thus the "__PACKAGE__->add_column(...)" calls that the "has" triggers won't work before that). Note: "__PACKAGE__->set_primary_key(...)" and "__PACKAGE__->add_unique_constraint(...)" calls must go after the "has" stanzas (since they depend on the referred columns being registered via "__PACKAGE__->add_column(...)" and that call is done when the "has" runs). TODO o convert the test harness to something sane - consider Fennec? o delay ->add_column() calls until right after the ->table() call (collect the args and run them in an after method modifier of 'table', possibly batched in a single ->add_columns() call) SEE ALSO DBIx::Class, Moose AUTHOR Norbert Buchmuller, "<norbi at nix.hu>" BUGS Please report any bugs or feature requests to "bug-dbix-class-moosecolumns at rt.cpan.org", or through the web interface at <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=DBIx-Class-MooseColumns>. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes. SUPPORT You can find documentation for this module with the perldoc command. perldoc DBIx::Class::MooseColumns You can also look for information at: o RT: CPAN's request tracker <http://rt.cpan.org/NoAuth/Bugs.html?Dist=DBIx-Class-MooseColumns> o AnnoCPAN: Annotated CPAN documentation <http://annocpan.org/dist/DBIx-Class-MooseColumns> o CPAN Ratings <http://cpanratings.perl.org/d/DBIx-Class-MooseColumns> o Search CPAN <http://search.cpan.org/dist/DBIx-Class-MooseColumns/> COPYRIGHT & LICENSE Copyright 2010 Norbert Buchmuller, all rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.32.0 2011-05-05 DBIx::Class::MooseColumns(3)
NAME | VERSION | SYNOPSIS | DISCLAIMER | DESCRIPTION | TODO | SEE ALSO | AUTHOR | BUGS | SUPPORT | COPYRIGHT & LICENSE
Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=DBIx::Class::MooseColumns&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>