On Feb 20, 2008 4:32 AM, Cian Barclay <[EMAIL PROTECTED]> wrote: > > > > On Feb 20, 2008 1:18 PM, Toby Corkindale <[EMAIL PROTECTED]> wrote: > > > > > > On Wed, Feb 20, 2008 at 01:10:12PM +1000, Cian Barclay wrote: > > > > > which is usable both for Catalyst and something else? How do you > > > get resultsets inside the model which could either be from the > > > Catalyst model, or from the database connection if Catalyst wasn't > > > being used? > > > > > > I think you're looking for the $self->resultsource->schema method, inside > your > > Model? > > > > I don't have one of those, do you mean $self->_source_handle->schema? Is > it okay to use with the leading underscore? >
He meant result_source: http://cpan.uwinnipeg.ca/htdocs/DBIx-Class/DBIx/Class/ResultSet.html#result_source But this is not all and it is something that begs for a FAQ entry - I always forget how to do it. The important thing is how to add new methods to the ResultSet: package ArchivedBooks; use base qw/DBIx::Class/; __PACKAGE__->table('books_archive'); __PACKAGE__->source_name('Books'); __PACKAGE__->resultset_class('ArchivedBooks::ResultSet'); package ArchivedBooks::ResultSet; use strict; use warnings; use base qw( DBIx::Class::ResultSet ); sub advanced_search { my ( $self, $params, $attrs ) = @_; $self now is a ResultSet - so you can use methods on it. see http://search.cpan.org/~jrobinson/DBIx-Class-0.08009/lib/DBIx/Class/ResultSource.pm#resultset_class At http://catalyst.perl.org/calendar/2007/16 I use that technique to write an advanced_search method that is useful for turning web form queries into DBIC queries. -- Zbigniew Lukasiak http://perlalchemy.blogspot.com/ _______________________________________________ List: Catalyst@lists.scsys.co.uk Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/ Dev site: http://dev.catalyst.perl.org/