2010-05-04 76 views
1

在我正在处理的博客系统中,我想使用标记作为决定特定帖子出现位置的机制。我正在使用acts_as_taggable_on来设置两个上下文,即normal:tags上下文,然后是:audience上下文。使用Acts_As_Taggable_On进行Rails标记:查找上下文中的所有标记

我使用一个帐户模型标记后的模型,像这样:

account.tag(post, :with => "cat1, cat2", :on => :audience) 

我在被检索的所有标签在特定环境下的问题。我能得到像这样的标签:

account.owned_tags # => "cat1, cat2, tag1", where tag1 came from the normal tag context 

但我想要做的就是让特定标签的情况下,像这样:

acount.owned_tags_on :audience 

有什么建议?谢谢!

回答

1

owned_tags正常ActiveRecord协会:

has_many :owned_tags, :through => :owned_taggings, :source => :tag, :uniq => true 

所以,你可以执行find与它的条件和选择您所需要的标签:

account.owned_tags.all(:conditions => ["context = ?", "audience"]) 
+0

甜!那很完美。谢谢! – 2010-05-05 15:07:18

相关问题