各製品にカテゴリがあるとしましょう。ユーザーに、ユーザーが興味を持っているいくつかのカテゴリを選択してもらい、同じカテゴリを持つ製品を見つけてもらいたいです。これは、Quora、Stumbleupon、Pinterest が行うことと似ています。
Rails でこのデータベース構造を設定する最良の方法は何でしょうか? User、Product、Category の 3 つのテーブルを作成し、User has many Categories & Product has many Categories の関係を作成する必要がありますか?
これに関する問題は、Users と Products の各行に対して、Categories の新しいインスタンスを参照するのではなく、作成するのではないでしょうか?
*追加: サブカテゴリが必要な場合はどうすればよいですか? たとえば、ユーザーがテクノロジーを選択した場合、さらに Web 開発、モバイル開発、ハードウェアなどから選択するよう求められる可能性があります。