2012-02-03 9 views
0

私は現在ActsAsTaggableOnが私のニーズに対応するかどうかを調べています。具体的には、ユーザーがサインアップして人を追加できるアプリケーションがあります。人々にタグを付けることができます。しかし、あるユーザーが作成したタグと、別のユーザーが作成したタグを分離したい。異なるユーザーのためのユニークなタグ

これは一般的な要件であると思われるので、明らかにフロントとセンターの何かではないことが少し驚いています。これは可能なのでしょうか?

ありがとうございます!

答えて

2

ActsAsTaggableOnは、必要な機能をサポートしていません。独自のタグ付けシステムを使用して、適切な構造の例としてActsAsTaggableOnを使用することをお勧めします。

タグテーブルに現在のユーザのスコープタグに使用できるユーザIDも含まれていることを除いて、同様の構造を使用します。

+1

私が望んでいた答えではなく、私が恐れる答え。ありがとう! –

0

ActsAsTaggableOnあなたは、彼らがタグ付けされてきたタグ(https://github.com/mbleigh/acts-as-taggable-on)を取得することを可能にするモデルacts_as_taggerを作るサポートしています。これは、あなたが話しているようです。

class User < ActiveRecord::Base 
    acts_as_tagger 
end 

class Photo < ActiveRecord::Base 
    acts_as_taggable_on :locations 
end 

@some_user.tag(@some_photo, :with => "paris, normandy", :on => :locations) 
@some_user.owned_taggings 
@some_user.owned_tags 
@some_photo.locations_from(@some_user) # => ["paris", "normandy"] 
@some_photo.owner_tags_on(@some_user, :locations) # => [#<ActsAsTaggableOn::Tag id: 1, name: "paris">...] 
@some_photo.owner_tags_on(nil, :locations) # => Ownerships equivalent to saying @some_photo.locations 
@some_user.tag(@some_photo, :with => "paris, normandy", :on => :locations, :skip_save => true) #won't save @some_photo object 

特にライン

@some_photo.locations_from(@some_user)...etc. 

お役に立てば幸いです。

+0

2人のユーザーが同じ名前のタグを持つことができますが、異なる属性を持つことができます(私はタグモデルを色のようなものに拡張する予定なので)。 –

関連する問題