私は、stackoverflowと同様のランキングシステムを持つウェブサイトを作っています。具体的には、質問をアップまたはダウンすることができます。質問のスコアは、アップボートの数からダウンボートの数を差し引いた数です。私のアプリケーションでは、Vote belongs_to:questionには、upvoteかdownvoteかを判断するブール値:upvoteがあります。私はスコアでソートする名前付きスコープを作ることができるかどうか疑問に思っていました。クエリ結果を投票数でソートする(関連付け)
SQL同等物は、((SELECT COUNT(*)FROM投票V1 WHERE v1.question_id = q.id AND v1.upvote =真)BY質問Q オーダーから
SELECT * ようなものになるだろう - DESC
しかし、これをRailsに入れる方法がわかりません。何か案は?
ありがとうございます!
ブールの代わりに投票値(+1または-1)を保存すると、このフィールドを合計するだけで簡単にできます。 – klew
これはいいアイデアです、klew。私がこれをした場合、どのように名前付きスコープで注文作業を行うのですか? – Vinay
あなたの問題のための解決策を得ましたか?本当にあなたの助けに感謝します。私は同じ問題に取り組んでいます。 – Sumas