Commit | Line | Data |
8273e845 |
1 | package # hide from PAUSE |
c6d74d3e |
2 | Log; |
ea2e61bf |
3 | |
4a233f30 |
4 | use warnings; |
5 | use strict; |
6 | |
ea2e61bf |
7 | use base 'MyBase'; |
8 | |
ea2e61bf |
9 | use Time::Piece::MySQL; |
10 | use POSIX; |
11 | |
12 | __PACKAGE__->set_table(); |
13 | __PACKAGE__->columns(All => qw/id message datetime_stamp/); |
14 | __PACKAGE__->has_a( |
6a3bf251 |
15 | datetime_stamp => 'Time::Piece', |
16 | inflate => 'from_mysql_datetime', |
17 | deflate => 'mysql_datetime' |
ea2e61bf |
18 | ); |
19 | |
20 | __PACKAGE__->add_trigger(before_create => \&set_dts); |
21 | __PACKAGE__->add_trigger(before_update => \&set_dts); |
22 | |
23 | sub set_dts { |
6a3bf251 |
24 | shift->datetime_stamp( |
25 | POSIX::strftime('%Y-%m-%d %H:%M:%S', localtime(time))); |
ea2e61bf |
26 | } |
27 | |
28 | sub create_sql { |
6a3bf251 |
29 | return qq{ |
ea2e61bf |
30 | id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, |
31 | message VARCHAR(255), |
32 | datetime_stamp DATETIME |
33 | }; |
34 | } |
35 | |
36 | 1; |
37 | |