如何在范围内执行此操作?

时间:2011-06-12 01:11:47

标签: ruby-on-rails ruby ruby-on-rails-3 scope

我有这个范围:

scope :search, lambda {|q| where("name LIKE ?", "%#{q}%") }

但是,我想比较qname,无论大写。所以我可以#{q.downcase},但我怎样才能name小写?

1 个答案:

答案 0 :(得分:4)

您可以使用SQL lower函数:

scope :search, lambda {|q| where("LOWER(name) LIKE ?", "%#{ q.downcase }%") }