2009-08-11 5 views
2

RESTful URLとリクエストのタイプでアクションのデフォルトマッピングを変更したいと考えています。 /fruits/:idコールfruitsコントローラでshowアクションにGET要求を送信する、デフォルトでは、ルートにmap.resources :fruitsを追加した後、例えばレールでデフォルトのRESTアクションを変更する

。しかし、showアクションの代わりにfruitsコントローラにカスタムアクション、たとえばdisplayを呼びたいと思います。どうすればいいのですか?これはルート設定でなければなりません。

+0

これはあなたの質問には直接関係しませんが、Railsの「RESTfulルーティング」はRESTとは関係ありません。かなりのURIはRESTと直交しています。 「RESTful URL」などはありません。 RESTに興味がある方は、もう少し詳しくお読みください - フィールディングの論文は信頼できるソースです。このサイトのRESTの説明を参照することもできます。 – aehlke

答えて

1

私はこのページを読んですることをお勧めいたしますしたいと思います:

http://guides.rubyonrails.org/routing.html

それは詳細にルーティングに関連するすべての側面を説明しています。

path_namesを使用すると、新しいパスと編集されたパスをカスタマイズできます。 をshowアクションのアクティブ化からdisplayアクションのアクティブ化に変更する場合、その変更はユーザーには表示されません。そしてあなたは明白な理由なしに流れから逸脱しているでしょう。

+3

ネストされたリソース、特に深くネストされたリソースを使用している場合は、実際にこれを行うにはまともな理由があります。ある時点で、デフォルトを受け入れることで大規模なコントローラーの肥大化を招き、それらをオーバーライドすると、複数のリソースを同じコントローラーに送信しながら入れ子構造を維持することができます。これは特に、インデックスアクションだけを持つ親コントローラと、それ以外の複雑な子リソースを持たない親コントローラで終わる場合に特に便利です。 –

関連する問題