我是Datamapper的新手。有没有办法在datamapper中编写不区分大小写的查询,因为我在使用datamapper搜索表中是否存在名称。通常我们在datamapper中编写查询,比如说,
Student.all(:name => "XYZ") where name can be of the form xyz, Xyz and XYZ.
因此,在上面的查询中,我必须添加哪些附加运算符才能使上述查询不区分大小写。
答案 0 :(得分:1)
对于datamapper,您必须使用
Student.all(:conditions => [ "lower(name) = ?", name.downcase ])
答案 1 :(得分:0)
修改您的查询:
name = "XyZ"
Student.find(:all, :conditions => [ "lower(name) = ?", name.downcase ])
答案 2 :(得分:-2)
你可以试试这个
name = "XyZ"
Student.where("lower(name) = ?", name.downcase)
或者你也可以在模态中进行验证,就像这样
validates_uniqueness_of :name, :case_sensitive => false