2013-02-25 13 views
15

Sto implementando una funzione di ricerca utente nella mia app Rails. Tuttavia, non voglio che gli amministratori appaiano nei risultati di ricerca.Multiple dove condizioni in Rails

sto cercando questo:

User.where(:admin => [nil, false], ["name LIKE ?", "%#{params[:query]}%"]) 

ma ottengo questo errore:

syntax error, unexpected ')', expecting tASSOC 

Allora, come faccio lista in modo appropriato where clausole all'interno delle parentesi?

risposta

35

Prova questa

User.where(["name LIKE ?", "%#{params[:query]}%"]).where(:admin => [nil, false]) 
+3

Grazie. L'ho verificato nella console di Rails e sembra convertirlo in 'WHERE a AND b' in SQL. Esattamente quello che volevo. –

Problemi correlati