2016-12-23 17 views
1

테이블에 3 가지 순위가있는 열에 순위를 선택하는 간단한 레일 검색 양식이 있습니다. 그러나 나는 복수 등급을 연장 할 수 없다.테이블의 여러 열에 대한 레일 검색 양식


표 음식 : 값 1, rank_value1 1, 값 2, rank_value2, VALUE3, rank_value3

보기 /foods/index.html :

<%= form_tag foods_path, :method => 'get' do %> 
    <p> 
    rank_value1 
    <%= text_field_tag :rvalue1, params[:rvalue1] %> 
    <%= submit_tag "Search", :name => nil %> 
</p> 
<% end %> 

모델 food.rb :

def self.search(search) 
    if search 
     Food.where(["rank_value1= ?", "#{search}"]) 
    else 
     Food.all 
    end 
end 

컨트롤러 foods_controller.rb :

def index 
    @foods = Food.search(params[:rvalue1]) 
end 

두 계급을 확장하기 위해, 나는 다음 코드를 시도했지만 작동하지 않았다.

보기 /foods/index.html :

<%= form_tag foods_path, :method => 'get' do %> 
    <p> 
    rank_value1 
    <%= text_field_tag :rvalue1, params[:rvalue1] %> 
    <%= text_field_tag :rvalue2, params[:rvalue2] %> 
    <%= submit_tag "Search", :name => nil %> 
    </p> 
<% end %> 

모델 food.rb :

def self.search(search1,search2) 
    if search 
     Food.where(["rank_value1= ? and rank_value2=?", "#{search1}", "# {search2}"]) 
    else 
     Food.all 
    end 
end 

컨트롤러 foods_controller.rb :

def index 
    @foods = Food.search(params[:rvalue1], params[:rvalue2]) 
end 

여러 열의 데이터로 검색하는 것에 대한 제안 사항이 있습니까?

답변