0

私は、質問をする IRC ボットにリンクされたこのクイズ レール アプリを持っています (はい、IRC で)。そこにはQuestion、質問、回答、ヒント、その他いくつかを含むこのモデルがあります。

私は、Quizモデル (たとえば、特別なハロウィーンやクリスマスのクイズなど) を表にquiz_idquestionsて、質問を分類できるといいなと思い、Categoryモデル (たとえば、 、映画または本) category_idquestions

現在、私のユーザーは、1 つまたは複数のクイズに質問を追加し、1 つまたは複数のカテゴリを質問に割り当てられるようにしたいと考えています…</p>

Quizそこで、とモデルを削除してタグに置き換えることを考えていました。これCategoryにより、ハロウィン タグ、映画タグがあり、質問にはタグとして「ハロウィン 映画 クリスマス」を付けることができます。

私の検索では、 のようなタグを含める方法や、他の誰かが想像したものを含める方法をかなり見てきましacts_as_taggableacts_as_taggable_on_steroids:-)

今、私は何をすべきか迷っているので、あなたが何をしたのか、どのように行ったのか、なぜこのようにしたのかを尋ねています。

4

2 に答える 2

2

質問にメタデータを追加するために両方とも使用されるため、カテゴリはタグで簡単に置き換えることができると思います。

しかし、クイズモデルには疑問があります。クイズ モデルを使用して質問をグループ化するだけの場合は、タグに置き換えることができます。しかし、クイズ モデルには、グループ化だけでなく、より多くの機能が含まれると思います。たとえば、スコアの管理、次の問題の選択などです。そのため、Quic モデルはそのまま維持します。

タグ付けを実装するには、acts_as_taggable_on_steroids が機能しますが、少し古いです。プラグインをはるかに柔軟にするため、バックグラウンドで named_scope を使用するタグ付けプラグインがあると便利です。

于 2008-12-03T03:00:49.297 に答える
2

act_as_taggable_on_steroids は古いですが、まだ機能しており、まだ維持されています。プライマリ リポジトリにアクセスしていることを確認してください。

http://svn.viney.net.nz/things/rails/plugins/acts_as_taggable_on_steroids/

acts_as_taggable_on_steroids を named_scopes で使用できます。方法を示す記事は次のとおりです。

スピードアップとnamed_scopeのacts_as_tggable_on_steroidsの検索

モデルへの実際の追加は非常に簡単です (これは上記の記事から直接引用したものです)。

named_scope :tagged_with, lambda { |tags| YourModel.find_options_for_find_tagged_with(tags) }
于 2008-12-03T10:36:51.123 に答える