0

今、私はそのようなモデルを持っています:

class CrossList < ActiveRecord::Base
  belongs_to :price_list  
end

class PriceList < ActiveRecord::Base
  has_many :cross_lists
end

そして、私はそのようなコードをメソッドに持っています:

@search_res = CrossList.search(search_condition)
@prlist = PriceList.find(:first, :conditions => { :id => @search_res.map(&:price_list_id)}, :order => 'price desc')

しかし、モデルの関連付けを使用してこれを行うにはどうすればよいですか? 私は書くことができます

@prlist = @search_res.price_lists

しかし、これは正しいですか?しかし、find のようにソートする必要があります。どうすればこれを行うことができますか?

また、何がベストですか?発見、または協会?

(レールの初心者)

4

1 に答える 1

1

:order次のように、と関連付けて順序を設定できます。

class Company < ActiveRecord::Base
   has_many :employees, order: "age DESC"
end

従業員はデフォルトで次のように並べられます。

Company.all.sample.employees

はい、このシナリオでは関連付けを使用します。

于 2013-06-23T15:22:51.913 に答える