2013-07-30 4 views
0

J'ai cette requête qui fonctionne mais je voudrais l'agrandir afin que je puisse vérifier plusieurs identifiants de manière à ce que je passe un vecteur d'identifiants. [1,2,3,5] etc ... J'ai essayé d'utiliser SQL IN sans chance.Ruby Rails Query In conditionnel

EventType.find(3).events.all(:include => {:sheet => :rink}, :conditions => ["rinks.id = ?", 2]) 

Répondre

1

Vous étiez sur la bonne voie avec IN. Voici la syntaxe qui fonctionne dans Rails 3+:

EventType.find(3).events.where("id IN (?)", [1,2,3]).include(:sheet => :rink) 

Amélioration d'un commentaire SQL supprime entièrement:

EventType.find(3).events.where(:id => [1,2,3]).include(:sheet => :rink) 
+0

Merci, je manque la parenthèse autour? – user2434674

+1

Vous pourriez aussi 'where (: id => [1,2,3])' –