table of contents
DBIx::Class::KiokuDB(3pm) | User Contributed Perl Documentation | DBIx::Class::KiokuDB(3pm) |
NAME¶
DBIx::Class::KiokuDB - Refer to KiokuDB objects from DBIx::Class tables.VERSION¶
version 1.23SYNOPSIS¶
See DBIx::Class::Schema::KiokuDB.package MyApp::DB::Result::Album; use base qw(DBIx::Class); __PACKAGE__>load_components(qw(Core KiokuDB)); __PACKAGE__->table('album'); __PACKAGE__->add_columns( id => { data_type => "integer" }, title => { data_type => "varchar" }, # the foreign key for the KiokuDB object: metadata => { data_type => "varchar" }, ); __PACKAGE__->set_primary_key('id'); # enable a KiokuDB rel on the column: __PACKAGE__->kiokudb_column('metadata');
DESCRIPTION¶
This DBIx::Class component provides the code necessary for DBIx::Class::Row objects to refer to KiokuDB objects stored in KiokuDB::Backend::DBI.CLASS METHODS¶
- kiokudb_column $rel
- Declares a relationship to any KiokuDB object.
In future versions adding relationships to different sub-collections will be possible as well.
METHODS¶
- store
- A convenience method that calls "store" in KiokuDB on all referenced KiokuDB objects, and then invokes "insert_or_update" on $self.
- get_kiokudb_column $col
- set_kiokudb_column $col, $obj
- store_kiokudb_column $col, $obj
- See DBIx::Class::Row.
OVERRIDDEN METHODS¶
- new
- Recognizes objects passed in as column values, much like standard relationships do.
- insert
- Also calls "insert" in KiokuDB on all referenced objects that are not in the KiokuDB storage.
- update
- Adds a check to ensure that all referenced KiokuDB objects are in storage.
AUTHOR¶
Yuval Kogman <nothingmuch@woobling.org>COPYRIGHT AND LICENSE¶
This software is copyright (c) 2014 by Yuval Kogman, Infinity Interactive.This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
2018-03-30 | perl v5.26.1 |