Upgrade to have actioned boolean on feedback - also fix boolean

deployment defaults
This commit is contained in:
Tom Bloor 2017-10-23 15:46:30 +01:00
parent 3d31e94367
commit 0302a3d299
15 changed files with 1974 additions and 11 deletions

View file

@ -10,6 +10,7 @@ __PACKAGE__->table("feedback");
__PACKAGE__->load_components(qw/
InflateColumn::DateTime
TimeStamp
FilterColumn
/);
__PACKAGE__->add_columns(
@ -53,6 +54,11 @@ __PACKAGE__->add_columns(
size => 255,
is_nullable => 0,
},
"actioned" => {
data_type => "boolean",
default_value => \"false",
is_nullable => 0,
},
);
__PACKAGE__->set_primary_key("id");
@ -64,4 +70,18 @@ __PACKAGE__->belongs_to(
{ is_deferrable => 0, on_delete => "NO ACTION", on_update => "NO ACTION" },
);
__PACKAGE__->filter_column( actioned => {
filter_to_storage => 'to_bool',
});
sub to_bool {
my ( $self, $val ) = @_;
my $driver_name = $self->result_source->schema->storage->dbh->{Driver}->{Name};
if ( $driver_name eq 'SQLite' ) {
return $val ? 1 : 0;
} else {
return $val ? 'true' : 'false';
}
}
1;