1

私はRubyonRails2.3.8とacts_as_taggable_onプラグインを使用しています。このプラグインは、tags(各タグのIDと名前を持つ)とtaggings(タグ付けされたアイテムに関連するtag_ids)の3つのテーブルを生成します。

ここで、特定のtag_idでタグ付けされたすべてのアイテムを取得したいと思います。それで、アナウンスモデル(アナウンスはタグ付けされたアイテムです)に移動し、次のようなものを書きたいと思います。

def find_by_category(tag_id)
  Announcement.tagged_with(tag_id) #this doesn't exist.
end

しかし、私が実際に見つけた唯一の方法はこれでした:

Announcement.tagged_with(tag_NAME) #this works, but I don't want to find by a name.

誰かがこれを達成する方法、または少なくともこれを行うためにプラグインのコードを変更する方法を知っていますか?

4

2 に答える 2

8
tag = ActsAsTaggableOn::Tag.find(tag_id)  
Announcement.tagged_with(tag)

1年後、これが誰かの役に立てば幸いです!

于 2012-01-04T17:07:39.427 に答える
0

act_as_taggable にはメソッドがあります

Model.find_tagged_with @tag_name

それは、いくつかのプロジェクトで私にとってはうまくいきます。

メソッド ドキュメント

于 2010-06-29T01:09:39.387 に答える