Результат поиска отображается на неправильной странице

У меня возникли некоторые трудности с реализацией драгоценного камня Ransack. У меня есть контроллер страниц с действием index и контроллер post также с действием index. Однако, когда я выполняю поиск в действии index контроллера страниц (pages#index), результаты отображаются в действии index контроллера post (posts#index). Означает ли это, что я могу искать только из представлений определенного ресурса, или я делаю ошибку?

pages#index 
def index
  @q = Post.search(params[:q])
  @posts = @q.result(distinct: true)
end

pages#index
<%= search_form_for @q do |f| %>
  <div class="field">
    <%= f.label :title_cont %><br>
    <%= f.text_field :title_cont, :class => "input text" %>
  </div>
  <div class="actions">
    <%= f.submit "Search"%>
  </div>
<% end %>

1 ответ

Решение
<%= search_form_for @q,:url=>pages_path do |f| %>
  <div class="field">
    <%= f.label :title_cont %><br>
    <%= f.text_field :title_cont, :class => "input text" %>
  </div>
  <div class="actions">
    <%= f.submit "Search"%>
  </div>
<% end %>

Измените код в форме поиска следующим образом. Это будет работать сейчас.

Другие вопросы по тегам