Мой синтаксис выключен. Я хочу создать область by_name
, которая найдет все agencies
, чей атрибут имени содержит переданную в строке (без учета регистра).Rails MySQL запрос ILIKE
Вот что у меня есть:
class Agency < ActiveRecord::Base
scope :by_name, ->(agency_name) { where('name ILIKE ?', "%#{agency_name}%") }
end
В консоли рельсах я печатаю в agencies = Agency.by_name("foo")
. Вот запрос генерируется:
SELECT `agencies`.* FROM `agencies` WHERE (name ILIKE '%foo%')
Вот сообщение об ошибке:
Mysql2::Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ILIKE '%foo%')