0

メリットジェムによって生成されたポイントでユーザーリストを並べ替える最良の方法は何ですか? メリットはおそらくデータベースにデータを保存しないため、そうするのが困難です。

これまでのところ、メリット ポイントを users テーブルにキャッシュしていますが、もっと良い方法はないかと考えていました。

4

4 に答える 4

0

私が見つけた最も近い解決策はhttps://github.com/tute/merit/wiki/How-to-show-a-points-leaderboardです

于 2014-03-13T06:18:01.547 に答える
0

これにより、ポイントのないユーザーが除外されます

User.joins('RIGHT JOIN merit_scores ON merit_scores.sash_id = users.sash_id RIGHT JOIN merit_score_points ON merit_score_points.score_id = merit_scores.id')
    .group('users.id', 'merit_scores.sash_id')
    .order('SUM(num_points) DESC').limit(10)
于 2015-08-30T19:38:39.287 に答える
-1

まず、あなたの質問は非常にあいまいであるため、誰かから反対票を投じられました。SO はプログラミング固有の質問用です (コードを含める必要があります)


注文

答えとしては、.orderActiveRecord 関数を使用することになります。

User.merits.order(:vote)

あなたは多くのコードを提供していないので、私が提供しようとするこれ以上のヘルプは当て推量に過ぎず、誰の助けにもなりません。多分あなたはあなたの答えをいくつかの詳細で更新できますか?

于 2014-03-12T09:37:16.237 に答える