无论如何,我如何找到所有记录

时间:2010-10-07 02:16:54

标签: ruby-on-rails ruby

我能找到一个不区分大小写的搜索

>> Band.find_by_name("metallica")
=> nil
>> Band.find_by_name("Metallica")
=> #<Band id: 3, name: "Metallica", created_at: "2010-10-03 01:17:24", updated_at: "2010-10-03 01:17:24", user_id: "4">

我需要在两种情况下找到记录......有什么建议吗?

3 个答案:

答案 0 :(得分:2)

Band.find(:all, :conditions => ['name = lower(?)', band_name.downcase])

答案 1 :(得分:1)

在Rails 3中,你可以做到

band_name = 'Metallica'
Band.where('LOWER(name) = ?', band_name.downcase)

答案 2 :(得分:0)

不幸的是,你必须为此添加一些原始的SQL。

Band.find :conditions => ['name ILIKE ?', 'metallica'] #if you are using postgres...