Запрос без учета регистра в Datamapper

Я новичок в Datamapper. Есть ли способ написать нечувствительный к регистру запрос в datamapper, потому что я ищу наличие имени в таблице с datamapper. Обычно мы пишем запрос в datamapper, как это сказать,

Student.all(:name => "XYZ") where name can be of the form xyz, Xyz and XYZ.

Так что в приведенном выше запросе, какой дополнительный оператор я должен добавить, чтобы сделать вышеупомянутый запрос нечувствительным к регистру.

3 ответа

Для datamapper вы должны использовать

Student.all(:conditions => [ "lower(name) = ?", name.downcase ])

Изменить ваш запрос:

name = "XyZ"
Student.find(:all, :conditions => [ "lower(name) = ?", name.downcase ])

Вы можете попробовать это

name = "XyZ"
Student.where("lower(name) = ?", name.downcase)

или вы можете поставить проверку в модальном также, как это

validates_uniqueness_of :name, :case_sensitive => false
Другие вопросы по тегам