![]() |
![]()
| ![]() |
![]()
NAMEDBIx::Skinny::InflateColumn::DateTime::Auto - DateTime inflate/deflate and auto insert update time for DBIx::Skinny SYNOPSISUse this module in your schema. package Your::DB::Schema; use DBIx::Skinny::Schema; use DBIx::Skinny::InflateColumn::DateTime; install_table table1 => { pk 'id'; columns qw/id name created_at updated_at/; }; install_table table2 => { pk 'id'; columns qw/id name booked_on created_on updated_on/; }; In your app. my $row = Your::DB->single('table1', { id => 1 }); print $row->created_at->ymd; # created_at is DateTime object DESCRIPTIONDBIx::Skinny::InflateColumn::DateTime provides inflate/deflate settings for *_at/*_on columns. It also set trigger for pre_insert and pre_update. Its concept refer to DBIx::Class::InflateColumn::DateTime, and some factor from DBIx::Class::InflateColumn::DateTime::Auto (http://blog.hide-k.net/archives/2006/08/dbixclassauto_i.php). INFLATE/DEFLATEThis module installs inflate rule for /_(at|on)$/ columns. That columns will be inflated as DateTime objects. OPTIONStime_zonedefault time_zone is 'local'. set this option if you decide other time_zone. Example: use DBIx::Skinny::InflateColumn::DateTime (time_zone => DateTime::TimeZone->new(name => 'Asia/Tokyo')); rulesdefault rules is [qr/^.+_at$/, qr/^.+_on$/]. set this option if you decide other rules. Example: use DBIx::Skinny::InflateColumn::DateTime (rules => [qr/^created$/, qr/^updated$/]); auto_insert_rulesdefault rules is [qr/^created_at$/, qr/^created_on$/, qr/^updated_at$/, qr/^updated_on$/]. set this option if you decide other rules. Example: use DBIx::Skinny::InflateColumn::DateTime (auto_insert_rules => [qr/^created$/, qr/^updated$/]); auto_update_rulesdefault rules is [qr/^updated_at$/, qr/^updated_on$/]. set this option if you decide other rules. Example: use DBIx::Skinny::InflateColumn::DateTime (auto_insert_rules => [qr/^updated$/]); TRIGGERSpre_insertSet current time stamp if column match auto_insert_rules and exists. pre_updateSet current time stamp if column match auto_update_rules and exists. Row object's columns will be updated as well. AUTHORRyo Miyake <ryo.studiom {at} gmail.com> SEE ALSODBIx::Skinny, DBIx::Class::InflateColumn::DateTime http://blog.hide-k.net/archives/2006/08/dbixclassauto_i.php AUTHORRyo Miyake "<ryo.studiom __at__ gmail.com>" LICENSEThis library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
|