routes.rbで複数ルートに共通の設定をまとめて書くには
routes.rbでは、複数のルートで共通の設定をしたい場合があります。例えば、多くのURLでユーザー名(:user)をパスの先頭につけたいとしましょう。次のようにそれぞれのルートを記述するのはDRYではないし、うっかり付けるのを忘れる可能性があります。
map.resources :diaries, :path_prefix => ":user" map.resource :profile, :path_prefix => ":user" map.resources :friends, :path_prefix => ":user"
このようなときは、with_optionsを使って次のように書くと見やすくなります。間違いも起こりにくなって便利です。
map.with_options :path_prefix => ":user" do |user|
user.resources :diaries
user.resource :profile
user.resources :friends
end







