2017-08-31 5 views
0

Vous pouvez rechercher des objets balisés à l'aide de tagged_with.rails: Comment faire une requête basée sur acts_as_taggable_on tags d'association?

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 

Mais comment trouvez-vous les associations d'objets étiquetés?

class UserAccount < ActiveRecord::Base 
    belongs_to :user 
end 

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

Répondre

1

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

Ou vous pouvez utiliser la requête inverse:

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

sélection de requête dépend de votre objectif.