| DBIx::Class::InflateColumn::ClassTypeEnum(3pm) | User Contributed Perl Documentation | DBIx::Class::InflateColumn::ClassTypeEnum(3pm) |
DBIx::Class::InflateColumn::ClassTypeEnum - Inflate enum-like columns to your Class::Type::Enum classes
version 0.014
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',
},
}
);
}
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).
This method chains with "register_column" in DBIx::Class::Row and checks for two subkeys inside the "extra" key of the column info:
Meredith Howard <mhoward@cpan.org>
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.
| 2021-08-02 | perl v5.32.1 |