###前提・実現したいこと
Rails4にて投稿(Post)を別のテーブルLikeの順番でpaginateのgemを使用して
Likeの多い順番で表示させたいです
開発環境のsqlite3では問題なく動作したのですが本番環境のpostgresqlでエラーメッセージが発生しました。
###発生している問題・エラーメッセージ
ActionView::Template::Error (PG::GroupingError: ERROR: column "posts.id" must appear in the GROUP BY clause or be used in an aggregate function
###該当のソースコード
def popular @posts = Post.joins(:likes).group(:post_id).order("count(*) desc").paginate(:page => params[:page], :per_page => 18) end
###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報
Likeテーブルの構成は下記です
- user_id
- post_id
- created_at
- updated_at
大変お手数ではございますがご教示いただければ幸いです。
どうぞ宜しくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。