有没有办法通过ActiveRecord预先排序父级的子级(Rails 3.2.13)?
所以如果你有这样的设置
class Parent < ActiveRecord::Base
has_many :children
[...]
class Children < ActiveRecord::Base
belongs_to :parent
喜欢这个:
p = Parent.where(:name => 'Diana').includes(:children, :order => 'd_o_b DESC')
这样当我调用p.children
时,我会得到一个按出生顺序排列的对象数组,而不是它们的数据库ID。
或者我之后只需要对数组进行排序?
答案 0 :(得分:1)
在Parent
模型中,将has_many
更改为:
has_many :children, :order => 'd_o_b DESC'
然后,只要您访问父记录的children
关联(例如,@parent.children
),它们就会按出生日期的降序排列。