0

私は私のルートにこれを持っています:

resources :cvits

これらのルートを生成します:

 cvits    GET    /cvits(.:format)           {:controller=>"cvits", :action=>"index"}
          POST   /cvits(.:format)           {:controller=>"cvits", :action=>"create"}
 new_cvit GET    /cvits/new(.:format)       {:controller=>"cvits", :action=>"new"}
edit_cvit GET    /cvits/:id/edit(.:format)  {:controller=>"cvits", :action=>"edit"}
     cvit GET    /cvits/:id(.:format)       {:controller=>"cvits", :action=>"show"}
          PUT    /cvits/:id(.:format)       {:controller=>"cvits", :action=>"update"}
          DELETE /cvits/:id(.:format)       {:controller=>"cvits", :action=>"destroy"}

しかし、URL を単数形にしたいと考えています (例: /cvit/、/cvit/new、/cvit/:id)。これを変更する最も簡単な方法は何ですか????

ありがとう!!!!

解決済み:それを理解して、私はやった:

リソース :cvits、:path => 'cvit'

4

2 に答える 2

2

良い:

resources :cvit

ここでドキュメントを確認してください:http://guides.rubyonrails.org/routing.html#singular-resources

またはより良い適合:

resources :cvits, :path => "cvit"

同じドキュメントページ。

于 2011-07-28T15:27:37.477 に答える
0

単一のリソースが必要なだけです。

resouce :cvit

# instead of 
resources :cvits

コントローラー名などは複数形のままであることに注意してください (CvitsController)。それ以外を指定するには、次を渡すことができます。

resource :cvit, :controller => 'cvit'

また、これを行うと、インデックス アクションがないことに注意してください。単一のリソースは、そこにあるものは多数あるのではなく、1 つだけであると想定しています。

それがあなたが持っているもの(単一のリソース)であると仮定すると、これはpathオプションを渡すよりも優れています。このpathオプションは、動作ではなく名前を上書きするだけです (つまり、単一のリソースを扱っている場合は意味がありませんが、インデックスはまだあります)。

于 2011-07-28T15:58:20.207 に答える