2013-09-03 3 views
1

У меня есть модель поиска, которая используется для создания поисковых запросов, которые хранятся в базе данных действием create, а затем перенаправляется на @search, где результаты отображаются вместе с параметрами поиска.ROR Form_for force для создания действия

Я хочу, чтобы иметь возможность этого вида (url search /: id) опубликовать новый поиск, чтобы создать поиск: id + 1, чтобы пользователь мог уточнить параметры поиска.

Я хотел бы иметь возможность использовать один и тот же form_for на обоих в настоящее время выглядит следующим образом:

<%= form_for(@search, :html => { :class => "form-horizontal" }) do |f| %> 

и делает так:

<form accept-charset="UTF-8" action="/searches" class="form-horizontal" id="new_search" method="post"> 

который создает новый поиск, но на показать это показывает:

<form accept-charset="UTF-8" action="/search?id=9" class="form-horizontal" id="edit_search_9" method="post"> 

Как я могу обновить его, чтобы заставить его сделать первый способ на всех страницы?

Большое спасибо!

+0

У вас есть маршрут, который соответствует '/ search'? – PinnyM

+0

im new для рельсов, пожалуйста, вы можете подробно рассказать о том, как должен выглядеть этот маршрут. – user2732663

+0

Уточнил это в моем ответе. – PinnyM

ответ

0

Вы можете сделать это, передав идентификатор тега формы в хэш-файл html и переопределив URL-адрес по умолчанию для соответствия требуемому действию. Вот пример если у вас есть маршрут под названием «поиск», что соответствует «/ поиск»

<%= form_for(@search, :url => searches_path, :html => { :class => "form-horizontal", :id => 'new_search' }) do |f| %> 

Чтобы проложить маршрут в Rails, сделать эту запись в вашем конфигурационном файле/routes.rb:

resources :searches 
+0

Разве это не так? если это не так: \t <% = form_for (@search,: url => search_path,: html => {: class => "form-horizontal",: id => "new_search"}) do | f | %> – user2732663

+0

@ user2732663, правильно - я неправильно понял, что было фактическим результатом и который был желаемым результатом. Обновлено. – PinnyM

+0

Спасибо, что очень полезно, я не совсем понимаю, как установить правильный маршрут для этого. Пожалуйста, не могли бы вы уточнить? – user2732663

Смежные вопросы