1

アプリケーションを rails 2.3/x から 3.2.x にアップグレードしています

次のような古いルートがあります。

map.calendar '/calendar/:year/:month', :controller => 'calendar', :action => 'index', :year => Time.now.year, :month => Time.now.month

rake ルートは次のようなものを生成します。

calendar        /calendar/:year/:month   {:controller=>"calendar", :action=>"index"}

ここで年と月が何なのかわかりません。何も指定されていない場合にデフォルト値が送信されますか? Rails 3.2.x の構文はどうなるでしょうか。

私はこのようなことを試しました:

match '/calendar/:year/:month' => 'calendar#index', :defaults => {:year => Time.now.year, :month => Time.now.month}

Rails 3.2.x で生成されたルートは次のとおりです。

/calendar/:year/:month(.:format)  calendar#index {:year=>2013, :month=>9}

このルートを正しく変換するのを手伝ってください。

4

1 に答える 1