2012-03-23 9 views
1

広告を投稿できるモデルを設定しようとしていますが、広告コンテンツなどの他の情報とともに、フォーム内のチェックボックスを使用して、広告が探しているもののいくつかのオプション/カテゴリを選択することができますために。モデルフィールドに複数の「ロール」がありますか?

たとえば、 「洗濯機と乾燥機を探している」と表示されている場合は、「家電、ホーム」のチェックボックスをクリックして、広告が当てはまると感じるかもしれません。

問題は、まだモデルをセットアップしていないことです。私のモデルにユーザーが選んだカテゴリーを保持させる最良の方法は何ですか?

答えて

1

This video is exactly what you're looking for.

HABTMの関係を有しています。

だからあなたは広告と呼ばれるテーブルがあり、テーブルには、カテゴリと呼ばれます。 AdCategoriesというテーブルを作成します。各レコードにはad_idとcategory_idの2つのフィールドしかありません。各レコードは広告をカテゴリにリンクします。 HABTMの

詳細情報は

+0

here.を見つけることができる彼はそのために改訂されたビデオをした、その中に私は彼がhas_manyの関係を使用しています信じています。これはHABTMよりも良い選択でしょうか? – user1076802

+0

@ user1076802 Nope。プログラマチックではなく論理的に考える:広告は潜在的に多くのカテゴリを持ち、カテゴリには潜在的に多くの広告があります。 「広告には多数のカテゴリがあります」というだけの場合、各カテゴリには、そのカテゴリに属する​​広告を指定するフィールドが必要です。しかし明らかに、各カテゴリにはその説明の下にある多くの広告があります。また、HABTM関係を行うことで、特定のカテゴリに属する​​すべての広告を表示するなどの操作を実行できます。 – varatis

+0

素晴らしい音、助けてくれてありがとう! – user1076802