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

0

您应该在通话中添加as密钥match

match '/calendar/:year/:month' => 'calendar#index', :defaults => {:year => Time.now.year, :month => Time.now.month}, :as => 'calendar'
于 2013-09-26T10:45:20.387 回答