我在habtm协会中有两个模型(圆形和用户) 我想让所有用户将属于某一轮(current_round)的用户排序到顶部。我不想丢弃其他用户,但他们都需要在结果数组中。
答案 0 :(得分:0)
由于用户属于Round,您可以尝试用户LEFT JOIN Rounds,如下所示:
User.all(:joins => "LEFT JOIN rounds ON user.round_id = rounds.id", :order => "rounds.id DESC")
这应该拉动属于某一轮的所有用户加上所有不属于任何轮次的用户,这些用户将位于底部或顶部,具体取决于您如何订购rounds.id(ASC或DESC)。