apv wrote:
> I must say DBIC is really nice. I had problems migrating to it a few  
> months ago b/c things were in flux (Schema's were just entering and  
> doc-cupboard was a bit bare) so left it alone for awhile. I'm back at  
> it and I was able to replace some CDBI classes in just a few minutes  
> yesterday.
> 
> I think I've found a problem though I might be using things wrong.  
> (Within a Catalyst app) I have a table of "word"s which own  
> "definition"s. Using this, I get back exactly 10 _words_ with  
> definitions.
> 
>                       $c->model("DB::word")
>                            ->search({
>                                word => { "like", "$letter\%" },
>                                active => "yes",
>                                      },
>                                     {
>                                rows => 10,
>                                order_by => "word",
>                                page => $page,
>                                      }
>                                     )
> 
> But using this prefetch, I get back 10 _definitions_ with however  
> many words they belong(s)_to. Too few words are returned almost every  
> time.
> 
>                       $c->model("DB::word")
>                            ->search({
>                                word => { "like", "$letter\%" },
>                                active => "yes",
>                                      },
>                                     {
>                                rows => 10,
>                                prefetch => [qw/definitions/],
>                                order_by => "word",
>                                page => $page,
>                                      }
>                                     )
> 
> I think it should still return 10 words with however many definitions  
> each owns, right? Or am I using the prefetch incorrectly? It's mysql  
> if it matters.

As soon as you prefetch a has_many we've got no effective way to handle the 
limit/offset as yet; "needs subselects, hopefully in 08"

-- 
      Matt S Trout       Offering custom development, consultancy and support
   Technical Director    contracts for Catalyst, DBIx::Class and BAST. Contact
Shadowcat Systems Ltd.  mst (at) shadowcatsystems.co.uk for more information

+ Help us build a better perl ORM: http://dbix-class.shadowcatsystems.co.uk/ +

_______________________________________________
List: http://lists.rawmode.org/cgi-bin/mailman/listinfo/dbix-class
Wiki: http://dbix-class.shadowcatsystems.co.uk/
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/trunk/DBIx-Class/
Searchable Archive: http://www.mail-archive.com/[email protected]/

Reply via email to