Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
DBIx::Class::DateTime:UsercContributed Perl DocDBIx::Class::DateTime::Epoch(3)

NAME
       DBIx::Class::DateTime::Epoch - Automatic	inflation/deflation of
       epoch-based columns to/from DateTime objects

SYNOPSIS
	   package MySchema::Foo;

	   use base qw(	DBIx::Class );

	   __PACKAGE__->load_components( qw( DateTime::Epoch TimeStamp Core ) );
	   __PACKAGE__->add_columns(
	       name => {
		   data_type =>	'varchar',
		   size	     =>	10,
	       },
	       bar => {	# epoch	stored as an int
		   data_type	    => 'bigint',
		   inflate_datetime => 1,
	       },
	       baz => {	# epoch	stored as a string
		   data_type	    => 'varchar',
		   size		    => 50,
		   inflate_datetime => 'epoch',
	       },
	       # working in conjunction	with DBIx::Class::TimeStamp
	       creation_time =>	{
		   data_type	    => 'bigint',
		   inflate_datetime => 1,
		   set_on_create    => 1,
	       },
	       modification_time => {
		   data_type	    => 'bigint',
		   inflate_datetime => 1,
		   set_on_create    => 1,
		   set_on_update    => 1,
	       }
	   );

DATETIME::FORMAT DEPENDENCY
       There have been no assumptions made as to what RDBMS you	will be	using.
       As per the note in the DBIx::Class::InflateColumn::DateTime
       documentation, you will need to install the DateTime::Format::* module
       that matches your RDBMS of choice.

DESCRIPTION
       This module automatically inflates/deflates DateTime objects from/to
       epoch values for	the specified columns. This module is essentially an
       extension to DBIx::Class::InflateColumn::DateTime so all	of the
       settings, including "locale" and	"timezone", are	also valid.

       A column	will be	recognized as an epoch time given one of the following
       scenarios:

       o   "data_type" is an "int" of some sort	and "inflate_datetime" is also
	   set to a true value

       o   "data_type" is some other value (e.g. "varchar") and
	   "inflate_datetime" is explicitly set	to "epoch".

       DBIx::Class::TimeStamp can also be used in conjunction with this	module
       to support epoch-based columns that are automatically set on creation
       of a row	and updated subsequent modifications.

METHODS
   add_columns(	)
       Provides	backwards compatibility	with the older DateTime::Epoch API.

   _inflate_to_datetime( )
       Overrides column	inflation to use "Datetime->from_epoch".

   _deflate_from_datetime( )
       Overrides column	deflation to call "epoch()" on the column value.

SEE ALSO
       o   DBIx::Class

       o   DBIx::Class::TimeStamp

       o   DateTime

AUTHORS
       Brian Cassidy <bricas@cpan.org>

       Adam Paynter <adapay@cpan.org>

COPYRIGHT AND LICENSE
       Copyright 2006-2012 by Brian Cassidy

       This library is free software; you can redistribute it and/or modify it
       under the same terms as Perl itself.

perl v5.24.1			  2012-10-22   DBIx::Class::DateTime::Epoch(3)

NAME | SYNOPSIS | DATETIME::FORMAT DEPENDENCY | DESCRIPTION | METHODS | SEE ALSO | AUTHORS | COPYRIGHT AND LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=DBIx::Class::DateTime::Epoch&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help