0

現在、Rails アプリケーション用のデータベースを作成しています。このスキーマには、写真、オブジェクト、およびタグの 3 つのモデルが含まれます。写真とオブジェクトの両方が「タグ付け可能」である必要があります。

  • タグはユニークです
  • タグは、写真、オブジェクト、またはその両方に属することができます

Rails は多態的な関連付けを提供します。これにより、タグは Photo と Object の両方との belongs_to 関係を持ちます。ただし、タグを両方に所属させることはできません。

これは、「タグから写真へ」と「タグからオブジェクトへ」の 2 つの独立した HABTM 関係を持つことで解決できます。

これを達成するためのより効率的な方法があるかどうか疑問に思っていました。または、間違った方向から問題に取り組んでいる可能性がありますか?

4

1 に答える 1

0

タグは、物事について何かを言う方法です。

あらゆる種類のことについて何かを言うために単一のタグのセットを使用することは意味がないかもしれません。「1024x768」や「shot-with-Olympus-camera」などのタグは、写真について何かを言おうとしている場合は便利ですが、オブジェクトについて何かを言おうとしている場合はあまり役に立ちません。

写真とオブジェクトの両方を参照するために「青」のようなタグを使用するとします。{photo_id、 "blue"}は{object_id、 "blue"}と同じ意味ですか?そうは思わない。

私にとって最も効率的な解決策は、写真について何かを言うために1セットのタグを使用し、オブジェクトについて何かを言うために別のタグセットを使用することです。また、ユーザーにとってより親しみやすいものになる可能性があります。

于 2011-05-08T03:09:15.967 に答える