我有片段和阵容加入了piece_lineup
piece_lineup是一个有很多通过关系连接并具有属性'position'
如何根据连接模型中的相关位置属性对片段列表进行排序。
感谢
答案 0 :(得分:0)
我认为现在可能会这样做:
Piece.joins(:piece_lineups).order("piece_lineups.some_attribute DESC")
如果您只想根据'属性'获得片段的顺序,那么'加入'是最好的。
如果您确实希望这是模型,那么您只需要:
class Piece < ActiveRecord::Base
has_many :lineups, :order => 'lineups.postion'
end
答案 1 :(得分:0)
尝试
Piece.includes(:piece_lineups).where('some condition').order('piece_lineups.position')
答案 2 :(得分:0)
试试这个:
class Piece < ActiveRecord::Base
has_many :piece_lineups
has_many :lineups, :through => :piece_lineups,
:order => "piece_lineups.position"
end
现在根据您的要求对piece.lineups
进行排序。