1
私はnew_words
コントローラを持っていますが、今では「検索」アクションが必要です。私のルートでは、このリンクにnew_words/search/"search_word_here"
RESTFulパラメータ付きのRailsフォームタグ
をナビゲートするとき
は、私はRailsは、検索結果のリストを返すようにしたい、私はこれだ:
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 %>
しかし、私はこのエラーを取得する:あなたがあなたのルートget 'search/:word'
のキーワードとして:word
を持っているので、任意の助けてくれてありがとう:)
この状況では、完全な安らぎのルートはありませんか? – user3448806
と簡単な方法は、ルートの接頭辞 'bin/rails routes'を表示します。 – MyruBapa
そのようなフォームヘルパーを使用していません。キーワードをルートの一部として保持するには、JSを使用してフォームを正しいURLにプログラムで送信する必要があります。両方をサポートしたい場合は、2つの異なるエンドポイントを作成するか、URLの ':word'部分をオプションにし、空であればクエリparamを使用します。しかし、これらのオプションはすべて私の意見に複雑さを増しています。したがって、ユースケースによっては価値がないかもしれません。 –