私はレール3アプリケーションを作成しています。私はUsersというデータベーステーブルを持っています。ユーザーには、first_name列とlast_name列があります。ユーザーをリストする私のページに、ユーザーがリストをフィルタリングできるようにする単一のテキスト検索ボックスが必要です。検索ボックスに次のいずれかを入力する必要があります。 - ユーザーの名字 - ユーザーの姓 - ユーザーのフルネーム(例: "Smith、John")"Where"節はRails 3のフィールドを連結しています
これらの結果を返すwhere句の記述方法はわかりません。私が得た最も近いものは以下ですが、連結されたフィールドの部分は機能しません。
where('(first_name LIKE :search) or (last_name LIKE :search) or ("#{last_name}, #{first_name}" LIKE :search)', :search => "%#{search}%")
この句はかなり不格好になっているように私は、また私のORステートメントを処理するためのより良い方法があるかどうかを知るために興味があります。
ありがとうございました!
Railscastsでこの解決策を見つけましたか教えてください。前もって感謝します。 –
それは鉄道放送からではありませんでした。 –
ありがとう!私はそれが非常に便利だと思った:) –