DBIx::Class::Helper::IgnoreWantarray - Get rid of search context issues
version 1.093501
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' }) );
This component makes search always return a ResultSet, instead of returning an array of your database in array context.
Override of the default search method to force it to return a ResultSet.
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;
Arthur Axel "fREW" Schmidt <frioux+cpan@gmail.com>
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.
To install DBIx::Class::Helpers, copy and paste the appropriate command in to your terminal.
cpanm
cpanm DBIx::Class::Helpers
CPAN shell
perl -MCPAN -e shell install DBIx::Class::Helpers
For more information on module installation, please visit the detailed CPAN module installation guide.