2

大文字と小文字を区別したくないものを検索するために私が見つけた最良の方法は次のとおりです。

@tag = Rails.env.development? ? Category.where("LOWER(name) LIKE ?", "%#{params[:find]}%")[0] : Category.where("LOWER(name) ILIKE ?", "%#{params[:find]}%")[0]

私は.envHeroku を使用しているため、ファインダーが必要であり、開発マシンに PostgreSQL をセットアップする必要はありませんでした。それでも、次のようなものはありませんか?

@tag = Category.find_by_name(params[:find], case_sensitive: false)

find_byRailsのヘルパーに渡すことができるオプションはありますか? これはいいものでしょう。

4

2 に答える 2

6

はい。Rails は、組み込みの Arel ライブラリまたは Squeel などの gemを介して、大文字と小文字を区別しないクエリをサポートしています。

于 2013-12-06T00:14:27.393 に答える