Class::DBI::Plugin::TimePiece

TokuLog!さんにインスパイアされて作ってみました。
全然汎用的でないです。
まぁ、フォーマット渡せるようにすればよいかな。


package Class::DBI::Plugin::TimePiece;
use strict;
use warnings;
use Carp;
use Time::Piece;
use vars '$VERSION';
$VERSION = '0.01';
sub import {
my $class = shift;
my $pkg = caller(0);
unless($pkg->isa('Class::DBI')){
croak(__PACKAGE__." is for Class::DBI application.");
}
no strict 'refs';
*{"$pkg\::has_a_timepiece"} = sub {
my $self = shift;
my $colum = shift;
$self->has_a(
$colum => 'Time::Piece',
inflate => sub { Time::Piece->strptime(shift , "%y/%m/%d %H:%M:%S" )},
deflate => 'ymd',
)
};
}
1;