私はモデルがApple
と呼ばれ、それがコントローラApplesController
を持って、ルートがあるしていることを与える:私はURLでことを除いて、「りんご」は置換される、同じすべてのコードを維持したいと思いますURLでRESTルートの名前を変更するにはどうすればよいですか?
resources :apples
apples GET /apples (.:format) {:controller=>"apples ", :action=>"index"}
new_apple GET /apples /new(.:format) {:controller=>"apples ", :action=>"new"}
edit_apple GET /apples /:id/edit(.:format) {:controller=>"apples ", :action=>"edit"}
車で"。したがって、URL /apples/new
は/cars/new
になります。
アプリで他のコードに触れていない間にこれを行う方法はありますか?私は:as
オプションを試みた
(つまり内部アプリで、それはapple
まだだとApplesController
):のみ、ルートのないURLを「名前」に変更することを
resources :apples, :as => "cars"
cars GET /apples (.:format) {:controller=>"apples ", :action=>"index"}
new_car GET /apples /new(.:format) {:controller=>"apples ", :action=>"new"}
edit_car GET /apples /:id/edit(.:format) {:controller=>"apples ", :action=>"edit"}
をしかし、(そうnew_apple_path
は、new_car_path
になりましたしかし、あなたがやりたいだろう何new_car_path
まだ/apples/new
代わりの/cars/new
を指す)
Rails 2.3では、 'resources:apples、:as" = "" cars "' –
です。私はRails(4)を初めて使っていますが、ルートヘルパーだけを変更します。生成されたURLは変更されません。 :path => "xxx"はURLを変更します – luigi7up