これをどのようにフレーム化するかわからないので、ここに行きます....
次の link_to タグがあります。
<%= link_to("My test title",{:controller=>"search", :action=>"for-sale", :title => listing.title, :search_term => search_term, :id=> listing.id}) %>
そして、routes.rb ファイルに次のカスタム ルートを追加します。
map.connect ':controller/:action/:title/search_item/:id', :controller=>'search', :action=>'for_sale'
非常に優れた SEO フレンドリーな URL を生成します。
/search/for-sale/sometitle/searchterm/123456
:action パラメータを両方から削除するにはどうすればよいですか。問題は、:action オプションを取り出して link_to タグを次のように変更する場合です。
<%= link_to("My test title",{:controller=>"search", :title => listing.title, :search_term => search_term, :id=> listing.id}) %>
そして私のカスタムルート:
map.connect ':controller/:title/search_item/:id', :controller=>'search', :action=>'for_sale'
生成された URL は、もはや SEO フレンドリーではなく、非常に醜いものです。
/search?title=test&search_term=test&id=1141409
カスタム ルートはコントローラ内の正しいアクションにリダイレクトされるため、アクション オプションを URL に含める必要はありません。:action オプションを削除したり、別の名前に変更したりすると、URL が「歪んで」しまいます。これを行う方法をご存知ですか?
いくつかのオプションを試してみましたが、何もうまくいかないようです。
ありがとう!