NAME
DBIx::Class::ResultSetManager - helpful methods for managing resultset classes (EXPERIMENTAL)
SYNOPSIS
# in a table class
__PACKAGE__->load_components(
qw/ResultSetManager Core/
);
# note order!
__PACKAGE__->load_resultset_components(
qw/AlwaysRS/
);
# will be removed from the table class and inserted into a
# table-specific resultset class
sub
search_by_year_desc : ResultSet {
my
$self
=
shift
;
my
$cond
=
shift
;
my
$attrs
=
shift
|| {};
$attrs
->{order_by} =
'year DESC'
;
$self
->search(
$cond
,
$attrs
);
}
$rs
=
$schema
->resultset(
'CD'
)->search_by_year_desc({
artist
=>
'Tool'
});
DESCRIPTION
This package implements two useful features for customizing resultset classes. load_resultset_components
loads components in addition to DBIx::Class::ResultSet
(or whatever you set as base_resultset_class
). Any methods tagged with the ResultSet
attribute will be moved into a table-specific resultset class (by default called Class::_resultset
, but configurable via table_resultset_class_suffix
). Most of the magic is done when you call __PACKAGE__->table
.
table
Stacks on top of the normal DBIx::Class table
method. Any methods tagged with the ResultSet
attribute will be moved into a table-specific resultset class (by default called Class::_resultset
, but configurable via table_resultset_class_suffix
). The magic for this is done within this __PACKAGE__->table
call.
load_resultset_components
# in a table class
__PACKAGE__->load_components(
qw/ResultSetManager Core/
);
# note order!
__PACKAGE__->load_resultset_components(
qw/AlwaysRS/
);
load_resultset_components
loads components in addition to DBIx::Class::ResultSet
(or whatever you set as base_resultset_class
).
AUTHORS
David Kamholz <dkamholz@cpan.org>
LICENSE
You may distribute this code under the same terms as Perl itself.