2013-02-28 3 views
4

나는 장학금 모델을 보는 두 개의 다른 컨트롤러 (scholarships_controller, scholarships_browse_controller)가 있습니다. Ransack 검색 기능이 현재 페이지의 검색 결과를 표시하도록합니다. 예를 들어,/scholarships_browse를 사용하고 있고 검색 기능을 사용하는 경우 scholarships_browse_controller를 사용하여/scholarships_browse에 결과를 표시하고 싶습니다.RoR Ransack 검색 문제

현재/scholarships_browse를 검색하면 scholarships_controller를 사용하고/scholarships로 리디렉션되어/scholarships_browse 대신 결과를 표시합니다. ScholarshipsBrowseController 및 ScholarshipsController에 대한

코드

def index 
    @search = Scholarship.search(params[:q]) 
    @scholarships = @search.result.page(params[:page]).per(3) #allows 3 scholarships on a page at a time 
    @search.build_condition 

    respond_to do |format| 
     format.html # index.html.erb 
     format.json { render json: @scholarships } 
    end 

끝 장학금

코드 index.html.erb 검색 :

<%= search_form_for @search do |f| %> 
    <%= f.condition_fields do |c| %> 
     <div class="field"> 
      <%= c.attribute_fields do |a| %> 
       <%= a.attribute_select %> 
      <% end %> 
      <%= c.predicate_select compounds: false, only: [:cont, :eq, :gt, :lt] %> 
      <%= c.value_fields do |v| %> 
       <%= v.text_field :value %> 
      <% end %> 
     </div> 
    <% end %> 
    <div class="actions"><%= f.submit "Search" %></div> 
<% end %> 

그래서, 내가 특별히 나는 것 같아 장학금을 사용하고 있는지 확인하려면 어떻게해야합니까? BrowseCo/scholarships_browse를 사용할 때 ScholarshipsController 색인 대신 관리자 색인이 필요합니까? 당신이 그것의 작용해야 어떤 형태를 이야기하는 :url 매개 변수를 사용할 수 있도록 (당신은 페이지의 소스 코드를 확인할 수 있습니다

<%= search_form_for @search, url: RAILS_ROUTEHERE do |f| %> 
... 
<%- end %> 

그에게 form_for에 대한 확장, search_form_for :보기에

답변

12

브라우저에서 렌더링 할 때 <form action=""> 태그가 올바른 경로를 가리키는 지 확인할 수 있습니다.

+0

멋진 답변, 저의 답이 도움이된다면, 긍정적 인 표를 던지고 받아 들일 수있는 답을 고맙게 생각합니다. – rorra

관련 문제