DBIx::Class::InflateColumn::ClassTypeEnum3pm
Inflate enum-like columns to your class::type::enum classes
Usage
package My::Schema::Result::Toast {__PACKAGE__->load_components(qw/ InflateColumn::ClassTypeEnum Core /);# Assuming Toast::Status is one of your enum classes...use Toast::Status; # Ensure it is loaded.__PACKAGE__->add_columns(status => {data_type => 'varchar',extra => {enum_class => 'Toast::Status',},});}
Version
version 0.014
Overview
Inflate DBIC columns into instances of your Class::Type::Enum classes. The storage "data_type" doesn't matter here, only whether or not enums should inflate/deflate to symbols (strings) or ordinals (integers).
Methods
register_column($column, $info)
This method chains with "register_column" in DBIx::Class::Row and checks for two subkeys inside the "extra" key of the column info:
- enum_class
-
Required to enable column inflation. Specify the complete class name that this column should be inflated to. It should already be loaded and must be a subclass of Class::Type::Enum.
- enum_ordinal_storage
-
If true, the column is inflated from and deflated to ordinal values.
Copyright and license
This software is copyright (c) 2018 by Meredith Howard.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
Releases
Unchanged in 2 releases since Debian 12 (Bookworm).