DBIx::Class::KiokuDB - Refer to KiokuDB objects from DBIx::Class tables.
Contents
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.
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.
perl v5.34.0 2022-05-24 DBIx::Class::KiokuDB(3pm)
Description
This DBIx::Class component provides the code necessary for DBIx::Class::Row objects to refer to KiokuDB
objects stored in KiokuDB::Backend::DBI.
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.
Name
DBIx::Class::KiokuDB - Refer to KiokuDB objects from DBIx::Class tables.
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.
Synopsis
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');
Version
version 1.23
