52 votes

Rails where () clause sur l'association modèle?

Supposons que j'ai un modèle de compte qui compte de nombreux utilisateurs. Les comptes ont une colonne booléenne "active". Comment obtenir tous les utilisateurs appartenant à des comptes "actifs"?

 @users_of_active_accounts = User.?
 

Merci!

95voto

Dogbert Points 44003

Essaye ça:

 User.joins(:account).where(:accounts => { :active => true })
 

59voto

Semyon Perepelitsa Points 7592

Vous devez rejoindre la table des comptes et fusionner l'étendue de compte appropriée:

 User.joins(:account).merge(Account.where(:active => true))
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X