NAME
DBIx::Class::HashAccessor - Helper functions to install accessors for serialized hash columns
VERSION
version 0.001
SYNOPSIS
Your result class
__PACKAGE__->load_components(
'HashAccessor',
'InflateColumn::Serializer',
'Core'
);
__PACKAGE__->table('data');
__PACKAGE__->add_columns(
'data' => {
'data_type' => 'VARCHAR',
'size' => 255,
'serializer_class' => 'JSON',
}
);
__PACKAGE__->add_hash_accessor( da => 'data' );
In code
# Access key in hash (no default hash needed)
print $result->da_exists('key') ? 1 : 0; # exists
$result->da('key',$new_value); # set
print $result->da('key'); # get
$result->da_delete('key'); # delete
$result->da_hash('hash','key',22); # set inside hash
print $result->da_hash('hash','key'); # get inside hash
$result->da_hash_delete('hash','key'); # delete inside hash
$result->da_push('array',@elements); # add to array (and create array if key isn't array)
$result->da_shift('array'); # shift from array
$result->da_in('array',$value); # value is in array
$result->da_in_delete('array',$value); # find value in array and delete
DESCRIPTION
SUPPORT
IRC
Join #dbix-class on irc.perl.org. Highlight Getty for fast reaction :).
Repository
http://github.com/Getty/p5-dbix-class-hashaccessor
Pull request and additional contributors are welcome
Issue Tracker
http://github.com/Getty/p5-dbix-class-hashaccessor/issues
AUTHOR
Torsten Raudssus <torsten@raudss.us>
COPYRIGHT AND LICENSE
This software is copyright (c) 2017 by Torsten Raudssus.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.