Общее решение Ruby для SQLite3 «LIKE» или PostgreSQL «ILIKE»?

Я использую SQLite3 для разработки и PostgreSQL для развертывания. Однако я столкнулся со следующей проблемой:

Мой простой поиск с использованиемSQLite3:

def self.search(search)
    if search
      find(:all, :conditions => ["style LIKE ? OR construction LIKE ?", "%#{search}%", "%#{search}%"])
    else
      find(:all)
    end
end

Однако это не работает для PostgreSQL, и мне нужно заменить LIKEна ILIKE, чтобы решить проблему :

def self.search(search)
    if search
      find(:all, :conditions => ["style ILIKE ? OR construction ILIKE ?", "%#{search}%", "%#{search}%"])
    else
      find(:all)
    end
end

. Есть ли «рубиновый способ» для поиска в любой базе данных?

РЕДАКТИРОВАТЬ-основываясь на ваших ответах, я не верю, что найду для этого универсальное решение Ruby.

Я следил за Ruby on Rails Tutorial :Learn Rails by Example -Майкла Хартла , где окончательный Gemfile показывает обе базы данных... что ж, разочаровывает...

17
задан gabrielhilal 1 July 2012 в 17:27
поделиться