Re: many-to-many relationship and sorting

[prev] [thread] [next] [Date index for 2005/03/09]

From: William Ross
Subject: Re: many-to-many relationship and sorting
Date: 11:14 on 09 Mar 2005
On 9 Mar 2005, at 10:29, Hartmaier Alexander wrote:

> How does the mapping method work internally?
> I thought it retrieves all id's of the foreign class (table) with a 
> single sql statement...then only an ORDER BY sql clause would be 
> needed...

The has_many(x => [y => z]) shortcut you're using doesn't change the 
SQL generated by has_many: it just adds an extra inflation step after 
the foreign ids have been retrieved from the linking table. The 
destination table in a m2m relationship is never touched, so there is 
no chance to order the results by something in that table.

If you look at Class::DBI::Relationship::HasMany->_hm_run_search, 
you'll see that it just calls search() on the linking class. So with 
this:

	Actor->has_many(films => [ Role => 'film' ]);

these two statements are _exactly_ the same:

	my @films = $actor->films;
	my @films = map { $_->film } Role->search( actor => $actor );

I thought Matt's HasManytoMany looked good: thoughtful and 
well-constructed, and it will do what you need. the documentation is a 
bit sparse, though :)

best

will

(message missing)

many-to-many relationship and sorting
Hartmaier Alexander 15:48 on 08 Mar 2005

Re: many-to-many relationship and sorting
Perrin Harkins 16:08 on 08 Mar 2005

many-to-many relationship and sorting
Hartmaier Alexander 16:14 on 08 Mar 2005

Re: many-to-many relationship and sorting
Perrin Harkins 17:52 on 08 Mar 2005

Re: many-to-many relationship and sorting
Matt S Trout 20:25 on 08 Mar 2005

Re: many-to-many relationship and sorting
Jay Strauss 18:37 on 08 Mar 2005

many-to-many relationship and sorting
Hartmaier Alexander 09:31 on 09 Mar 2005

Re: many-to-many relationship and sorting
Tony Bowden 09:53 on 09 Mar 2005

Re: many-to-many relationship and sorting
Matt S Trout 15:29 on 12 Mar 2005

many-to-many relationship and sorting
Hartmaier Alexander 10:29 on 09 Mar 2005

Re: many-to-many relationship and sorting
Tony Bowden 10:55 on 09 Mar 2005

Re: many-to-many relationship and sorting
William Ross 11:14 on 09 Mar 2005

many-to-many relationship and sorting
Hartmaier Alexander 11:26 on 09 Mar 2005

Re: many-to-many relationship and sorting
William Ross 11:36 on 09 Mar 2005

many-to-many relationship and sorting
Hartmaier Alexander 12:24 on 09 Mar 2005

Re: many-to-many relationship and sorting
Tony Bowden 12:57 on 09 Mar 2005

Re: many-to-many relationship and sorting
Jay Strauss 14:15 on 09 Mar 2005

Re: many-to-many relationship and sorting
Tony Bowden 15:14 on 09 Mar 2005

Re: many-to-many relationship and sorting
Perrin Harkins 17:31 on 09 Mar 2005

Problem 'setting' data.
John Day 23:00 on 09 Mar 2005

Re: Problem 'setting' data.
Michael Peters 23:12 on 09 Mar 2005

Re: Problem 'setting' data.
Jason Galea 23:30 on 09 Mar 2005

Re: many-to-many relationship and sorting
Matt S Trout 15:31 on 12 Mar 2005

Generated at 08:54 on 14 Mar 2005 by mariachi v0.52