3

次のように routes.rb で定義されたリソースがあります。

map.resources :users

次のような最もクリーンな link_to オプションを使用するのが好きです。

link_to @user

ただし、この呼び出しに「view=local」というパラメーターを追加したいと思います。

user_path を使用していた場合は、次のようにします。

link_to user_path(@user, { :view => 'local' })

user_path 関数を明示的に含めずに同じ結果を得る方法はありますか? 理想的には、次のようにします。

link_to @user, { :view => 'local' }

しかし、それはうまくいかないようです。

4

1 に答える 1

5

いいえ、できません。あなたが持っている唯一の本当のコントロールは、リンクタグにさらにパラメータを追加する機能です。link_toには、HTMLタグにtitle属性などを追加できる3番目のパラメーターがありますが、href値は変更されません。

http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#M001597

先に進み、user_pathヘルパーを使用します。Railsのほとんどのものと同様に、デフォルトのアクションを実行したい場合、それは単純になります。もっと複雑なことをしたいので、もっと仕事をしなければなりません:)

于 2010-02-19T21:56:14.457 に答える