3.5 および ruby 1.8.7 4 つの列 (name,name2,last_name,last_name2) で動作する複数検索を作成しようとしています。テキスト ボックスで 4 つの列を検索したいのですが、24 の条件を作成したくありません。これを行う他の方法はありますか、または24条件の代わりに条件付きFORを作成する可能性があります
I want to search by
name and name2
name and name2 and last_name
name and last_name
last_name and last_name2
...
There are 24 conditions
実際、私のコントローラーは動作していますが、24 条件を書きたくありません。ここに私の問題があります
これが私のモデルが空です
****************Here is my model************
class Project < ActiveRecord::Base
end
これが私のコントローラーです
*************Here is my controller****************
class ProjectsController < ApplicationController
def index
@projects = Project.find(:all, :conditions => "(
name LIKE \"#{params[:query]}%\" OR
name2 LIKE \"#{params[:query]}%\" OR
last_name LIKE \"#{params[:query]}%\" OR
last_name2 LIKE \"#{params[:query]}%\" OR
(concat(name, \" \", last_name) LIKE \"#{params[:query]}%\")OR
(concat(name, \" \", name2 ) LIKE \"#{params[:query]}%\")OR
(concat(last_name, \" \", last_name2) LIKE \"#{params[:query]}%\")OR
(concat(name, \" \", name2, \" \",last_name, \" \",last_name2) LIKE \"#{params[:query]}%\")OR
(concat(name, \" \", name2, \" \",last_name) LIKE \"#{params[:query]}%\")) ")
end
end
検索フォームはこちら
*********************Here is my view
<div id="search-area">
<div id="searchbox">
<form name="search-form" id="search-form">
<label for="query"><%= ('BUSCAR') %>
<%= image_tag("loader.gif",
:align => "absmiddle",
:border => 0,
:id => "loader",
:style =>"display: none;" ) %>
</label>
<%= text_field_tag "query", params[:query], :autocomplete => 'on' %>
</form>
</div>
</div>
誰かがこれを条件付きで変換するのを手伝ってくれますか? または、text_field_tag で 4 つの列を見つける他の方法