2017-08-31 103 views
0

您可以使用tagged_with找到標記的對象。rails:如何基於acts_as_taggable_on關聯標籤進行查詢?

class User < ActiveRecord::Base 
    acts_as_taggable_on :tags, :skills 
    scope :by_join_date, order("created_at DESC") 
end 

User.tagged_with("awesome").by_join_date 

但你如何找到標記對象的關聯?

class UserAccount < ActiveRecord::Base 
    belongs_to :user 
end 

UserAccount.joins(:user)...??? 

回答

1

UserAccount.joins(:user).merge(User.tagged_with("awesome"))

或者你可以使用反向查詢:

User.tagged_with("awesome").includes(:user_account).

查詢選擇取決於你的目標。

相關問題