Railsのルーティングってなんかな〜
Railsを学びはじめたときにルーティングでresoucesを使うと複数形になったり
便利なんだけど決められてる感があって、ほんとはこういうURLにしたいのにな、
なんだかRailsって思い通りのURLにすることできないのかな〜って思ってました。
そんな初学者のかたに朗報です。
好きなURLにするには
scopeメソッド
を使うことで、resources
によって生成されるデフォルトのパス名を変更できます。
scope do
resources :this_sites , path: 'kono_site'
end
こんな感じで好きなURLに変えることができます。
Prefixなどは変わりません。コントローラー名とは違ってこのURLにしたい場合はscopeを使いましょう。
newアクションをatarashikuに変えてみる
ほかにこんな風にすると。。。。
scope(path_names: { new: 'atarasiku', edit: 'hennsyu' }) do
resources :this_sites, path: 'kono_site'
end
newアクション
がatrasiku
に、editアクション
がhennsyu
に変わっています!
こんな感じで窮屈だな〜って思っていたRailsのルーティングが意外と自由なことに気づけると思います。
ただあまりやりすぎると訳がわからなくなるのでご注意を。
それではよいRailsライフを〜。
参考サイト