【发布时间】:2015-11-27 22:10:38
【问题描述】:
有一个视图我要显示的内容
例如:
recipe.user.name
recipe.name
recipe.picture
recipe.created_at
排序
recipe.likes.count
控制器:
@recipes_by_likes = Recipe.likes_count.paginate(page: params[:page])
型号:
Recipe has_many :likes
和
Like belongs_to :recipe
范围:
scope :likes_count, -> {
select('recipes.*, COUNT(likes.id) AS likes_count').
joins(:likes).
order('likes_count DESC')
}
但这给了我
SELECT recipes.*, COUNT(likes.id) AS likes_count
FROM "recipes"
INNER JOIN "likes" ON "likes"."recipe_id" = "recipes"."id"
ORDER BY "recipes"."created_at" DESC, likes_count DESC
LIMIT 30 OFFSET 0
只返回 1 个(错误的)结果。
【问题讨论】:
标签: mysql ruby-on-rails activerecord named-scope