0

へのリンクが欲しい

http://example.com/shop/:shop_name

したがって、このようなものになるはずです。

<%= link_to "Shop", req.host + "/shop/"+ @shop.shop_name , :class => 'btn' %>

something_pathまたはsomething_urlここでは使用したくありません。

現在のホスト変数からURLリンクを作成したいだけです。
どうやって?

アップデート:

  <%= link_to "Shop", request.host + /shop/ +@shop.shop_name , :class => 'btn' %>

これは私を連れて行きます

http://www.example.com/shop/www.example.com/shop/walmart

4

2 に答える 2

1

URLヘルパーを使いたくないのはなぜですか? 手作業で行うとエラーが発生しやすくなります。

これを単純にroutes.rb

get "shop/:name", to: "shops#show", as: "shop_name"

次に、テンプレートでこれを使用できます。

<%= link_to "Shop", shop_name_path(@shop.shop_name), :class => 'btn' %>

コントローラーのshowアクションでは、パラメーターshopsをフェッチするだけnameです:

shop_name = params[:name]
于 2013-01-08T12:05:57.647 に答える
1

で試して、

<%= link_to "Shop", "/shop/"+ @shop.shop_name , :class => 'btn' %>
于 2013-01-08T11:50:42.490 に答える