Как вы можете комбинировать 2 разных условия, используя логический ИЛИ вместо AND?
ПРИМЕЧАНИЕ. 2 условия генерируются как области рельсов и не могут быть легко изменены на что-то вроде where("x or y")
.
Простой пример:
admins = User.where(:kind => :admin)
authors = User.where(:kind => :author)
Легко применить условие И (что для этого конкретного случая бессмысленно):
(admins.merge authors).to_sql
#=> select ... from ... where kind = 'admin' AND kind = 'author'
Но как вы можете создать следующий запрос, имеющий уже два разных отношения Arel?
#=> select ... from ... where kind = 'admin' OR kind = 'author'
Кажется (в соответствии с Arel readme):
Оператор OR еще не поддерживается
Но я надеюсь, что здесь это не применимо и ожидайте написать что-то вроде:
(admins.or authors).to_sql