开发者

How to search by context using acts-as-taggable-on

I'm having trouble understanding how the "tagged_with" method would work in the case where I wanted to search "by context".

For example, if I have the following @user:

class User < ActiveRecord::Base
      acts_as_taggable_on :skills, :interests
    end

@user1 = User.new(:name => "Bobby")
@user1.interest_list = "1, 2"     
@user1.skill_list = "5, 3, 4"
@user1.save

@user2 = User.new(:name => "Al")
@user2.interest_list = "2, 4"     
@user2.skill_list = "1, 3, 4"
@user2.save

I know that

User.tagged_with(["1"], :any => true)

will give me back both @user1 and @user2, b/c it doesn't distinguish between i开发者_运维技巧nterest"1" tag or skill"1" tag. But my question is: Is there a way to search for Users with tag "1" in "interests" context only and not "skills" context ? In other words, how do i fetch just @user2 by specifying "skill" "1" somehow ?

Thanks for you help, guys


Use the on option:

User.tagged_with(["1"], :on => :skills)

See the section entitled "Dynamic Tag Contexts" at the readme and this cheat sheet for a reference.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜