Nicholas Perez > Data-Morph-1.113280 > Data::Morph::Backend::DBIC

Download:
Data-Morph-1.113280.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  1
View/Report Bugs
Module Version: 1.113280   Source   Latest Release: Data-Morph-1.140400

NAME ^

Data::Morph::Backend::DBIC - Provides a Data::Morph backend for DBIx::Class

VERSION ^

version 1.113280

DESCRIPTION ^

Data::Morph::Backend::DBIC implements a Data::Morph backend that talks to a database via DBIx::Class. New instances or rows are created from the passed in DBIx::Class::ResultSet to the constructor. Values are set and retrieved from the row using the following logic: If there is an accessor, use it, if not, see if it has a column, use inflated_columns methods, if not die. So directives defined in the map for reading and writing should match either accessors or column names

PUBLIC_ATTRIBUTES ^

result_set

    is: ro, isa: DBIx::Class::ResultSet, required: 1

This attribute holds the active ResultSet that should be used when creating new rows

auto_insert

    is: ro, isa: Bool, default: false

During the execution of the "epilogue", this attribute is checked to see if the newly created and populated instance should be inserted into the database

new_instance

    is: ro, isa: CodeRef, lazy: 1, builder: _build_new_instance

This attribute overrides what is provided in Data::Morph::Role::Backend and uses a builder method that returns a coderef that uses "result_set" to return a new row using "new_result" in DBIx::Class::ResultSet

PUBLIC_METHODS ^

epilogue

    (DBIx::Class::Row)

This method implements "epilogue" in Data::Morph::Role::Backend. It reads "auto_insert" to determine if the row should be inserted into the database.

PROTECTED_METHODS ^

_build_new_instance

This is the builder method for "new_instance". If special logic is needed in creation of the instance factory, simply override or advise this method as needed. By default, it returns a CodeRef that builds DBIx::Class::Row objects using "new_result" in DBIx::Class::ResultSet upon the "result_set"

AUTHOR ^

Nicholas R. Perez <nperez@cpan.org>

COPYRIGHT AND LICENSE ^

This software is copyright (c) 2011 by Nicholas R. Perez <nperez@cpan.org>.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

syntax highlighting: