0

sqlite3データベースで名前をあいまい検索するこのメソッドがあります。つまり、文字「j」を検索すると、どこかに「j」があるエントリが返されます。「John」と「Vijay」は両方とも一致します。 。ただし、railsアプリをHerokuにプッシュすると、アプリケーションはpostgresを使用し、クエリは機能しなくなります。演算子のようなこのSO回答postgres全文検索によると、postgresはLIKE演算子を使用します。postgresで動作させるために私が変更する必要があるものを誰かが見ることができますか?

def getEmployeeByName

respond_with Employee.select("id, firstname, lastname, position").where("UPPER(firstname || ' ' || lastname) LIKE ('%' || ? || '%')", params[:query])

end

このメソッドは、RubyonRailsクエリヘルパーを使用して記述されたSQLクエリであることに注意してください。

4

1 に答える 1

2

検索で大文字と小文字を区別しないように、LIKE を ILIKE に変更しました。問題が解決しました。

于 2013-01-23T22:34:27.743 に答える