SOのオープンソースのクローンを見てきましたが、
http://github.com/cnprog/CNPROG
私は Python/Django を知りませんが、何が起こっているのかを読むことはできます。
開発者は、cron ジョブでのみバッジを授与しているようです。賞は、賞を達成するために満たさなければならない基準の「ルール」である方法によって与えられます。
基準であるこのファイルでは、
それでも、 best-way-to-store-badge-criteria への回答では、次のようなクエリを実行しないと言っています。
"select count(*) from posts where user = :user"// for every post.
これは CNPROG メソッドに似ていますが、代わりに
各投稿が来るのを監視し、「それらをカウント」して、ルールの状態をユーザープロファイルに保存する単純なルールがあります。
「それらを数える」という言葉は、すべてを 1 つの表に記録する方がよいという意味ですか?
class UserStats
int voteUpCount
int voteDownCount
int score
int commentCount
int viewCount
int offensiveFlagCount
int imageCount
int feedbackCount
int commentEditCount
int commentDeleteCount
int questionCount
int questionEditCount
int questionDeleteCount
次に、このデータを使用して、ユーザーが投稿するコメントごとに単純なルールを作成しif(commentCount > 10)...、SQL クエリを実行します。
Q誰かがbest-way-to-store-badge-criteriaという質問からの回答をさらに説明できる場合は、「ルール」、「基準」、およびデータベース設計の例を挙げてください。
これらは、いくつかの「ユーザーごとのアクション」および cron ジョブで使用され、バッジを付与します。