У меня есть контроллер new_words
, и теперь я хочу иметь действие «поиска».Rails form_tag с параметрами RESTFul
Я хочу Rails вернуть список результатов поиска при навигации по этой ссылке new_words/search/"search_word_here"
В моих маршрутах, я получил это:
resources :new_words do
collection do
get 'search/:word', action: :search, as: 'search'
end
end
И в виде у меня есть форма с get
методом.
<%= form_tag search_new_words_path, method: :get, remote: true do %>
<%= text_field_tag :word %>
<%= submit_tag 'Search' %>
<% end %>
Но я только получаю эту ошибку:
Спасибо за любую помощь :)
Итак, разве у меня нет полного спокойного маршрута в этой ситуации, не так ли? – user3448806
и простой способ префикс маршрута для показа 'bin/rails routes' – MyruBapa
Пока не используется вспомогательный элемент формы. Вам нужно будет использовать JS для программной отправки формы на правильный URL-адрес, если вы хотите сохранить ключевое слово как часть маршрута. Если вы хотите поддерживать оба варианта, вы можете создать две разные конечные точки или сделать необязательную часть ': word' URL-адреса и использовать параметр запроса, если он пуст. Но все эти варианты сложны, на мой взгляд, так что, возможно, не стоит того, что зависит от вашего варианта использования. –