User.where (: id => 1) .where (: id => 2) с ActiveRecord не работает - PullRequest
1 голос
/ 22 декабря 2011

Проще говоря:

pry(main)> User.where(:id =>1).where(:id => 2).first
 User Load (0.4ms)  SELECT "users".* FROM "users" WHERE "users"."id" = 2 LIMIT 1
 #user 2 is returned

Как я могу заставить его работать:

pry(main)> User.where(:id =>1).where(:id => 2).first
 User Load (0.4ms)  SELECT "users".* FROM "users" WHERE "users"."id" = 1 AND "users"."id" = 2 LIMIT 1
#this way no user is returned, because I'm narrowing it down as much as possible

1 Ответ

1 голос
/ 22 декабря 2011

С помощью arel вы можете сделать это:

t = User.arel_table
User.where(t[:id].eq("1").and(t[:id].eq("2")))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...