1

ユーザーと投稿の評価システムを実装しようとしています。

複数のレピュテーションを管理するための最適なスキーマは何ですか。

ユーザーには、投稿とフィードバックから派生した評判があります (SO と同様)。

投稿にも評判があります (これも SO に似ています)。

評判テーブルを 1 つ持つという私の最初のアイデア。行は、ユーザー/投稿の ID と投票の値に対応します。

2 つの質問:

  • これはこれを管理する最良の方法ですか?

  • ユーザーおよび投稿レコードの一意の ID は、rake が作成するデフォルト値である自動インクリメントです。unique_ids が衝突する可能性があるようです。それは正当な懸念ですか?どうすればこれを軽減できますか?

ありがとう

4

1 に答える 1

4

投稿の評判とユーザーの評判に別々のテーブルを用意します。これらは意味的に異なるものであり、そのように分離する必要があります。

このようにして、投稿への外部キーを持つ 1 つのテーブルと、レピュテーションが適用されるユーザーへの外部キーを持つテーブルを持つことができます。

于 2009-09-14T23:39:09.170 に答える