NAME

DBIx::Class::Helper::IgnoreWantarray - Get rid of search context issues

VERSION

version 1.093501

SYNOPSIS

package MyApp::Schema::ResultSet::Foo;

__PACKAGE__->load_components(qw{Helper::IgnoreWantarray});

...

1;

And then else where, like in a controller:

my $rs = $self->paginate(
  $schema->resultset('Foo')->search({
     name => 'frew'
  })
);

DESCRIPTION

This component makes search always return a ResultSet, instead of returning an array of your database in array context.

METHODS

Override of the default search method to force it to return a ResultSet.

NOTE

You probably want this applied to your entire schema. The most convenient way to do that is to make a base ResultSet and inherit from that in all of your custom ResultSets as well has make it the default ResultSet for the non-custom ResultSets. Example:

package My::App::Schema::ResultSet;

use strict;
use warnings;

use base 'DBIx::Class::ResultSet';

__PACKAGE__->load_components('Helper::IgnoreWantarray');

1;

package My::App::Schema;

use base 'DBIx::Class::Schema';

My::App::Schema->load_namespaces(
   default_resultset_class => 'ResultSet',
);

1;

AUTHOR

Arthur Axel "fREW" Schmidt <frioux+cpan@gmail.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2009 by Arthur Axel "fREW" Schmidt.

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