named_scope and its :order function.

Could someone help me to solve my problem?I’m using named_scope,and there seems to be a little problem…
Can I sort a model by another model’s column?For example,I have a “users” table,it has a “value” column.And in the user.rb:
has_many :articles

in the article.rb:
belongs_to :user
named_scope :by_user_value,:order => “…”

What I want to know is,how can I finish the :order=>"…" parameters to sort the articles by there user’s “value”?Can somebody help me with that?Thanks a lot…

Could someone help me to solve my problem?I'm using named_scope,and there
seems to be a little problem...
Can I sort a model by another model's column?For example,I have a "users"
table,it has a "value" column.And in the user.rb:
has_many :articles

You need to joins the users table if you want to order by a column on
it.

Fred

Thanks very much.
Could you give me some more advice how can I do this?I still don't
know how to join the two tables...thanks again.

Try this:

named_scope :by_user_value, :include => :user, :order => 'users.value'

If you're not accessing the user association, you could also
use :joins instead of :include, but I'm guessing you'll need to load
those records anyways.

--Matt Jones

It works!Thanks a lot...