Rails: Trouver toutes les conditions

dans mon application, j’ai des utilisateurs de différents pays et je veux effectuer des recherches sur eux

J’ai essayé de le faire comme ça dans l’action d’index

@fromcanada = User.find(:all, :country => 'canada') 

mais j’ai l’erreur

  Unknown key: country 

Cependant, cela m’amène donc à me demander ce qui peut devenir une clé. Dans mon fichier de schéma de firebase database, j’ai une colonne “pays” sur la table des utilisateurs.

 t.ssortingng "country" 

De plus, quand j’ai fait tout trouver

 @users = User.all 

J’ai pu faire ça

 

Pouvez-vous m’expliquer pourquoi tout ce que j’ai trouvé avec les conditions n’a pas fonctionné? et montre-moi comment j’aurais dû le faire?

Essaye ça.

 @fromcanada = User.find(:all, :conditions => { :country => 'canada' }) 

edit: Comme jason328 l’a souligné, la réponse ci-dessus est obsolète en 3.2, et une réponse mise à jour serait

 @fromcanada = User.where(:country => 'canada') 

Au cas où personne ne lirait les commentaires. Un meilleur format serait

 @fromcanada = User.where(country: 'canada').all 

Le code de la réponse précédente est obsolète en 3.2.

Et pour ceux qui utilisent Rails 4, supprimer la méthode all suffira.

 @fromcanada = User.where(country: 'canada').to_a 

Notez que le to_a appelle la requête dans un format de tableau.