将Rails 2路由更改为Rails 3路由

时间:2013-01-08 18:55:45

标签: ruby-on-rails

您好我正在尝试从rails 2项目更改我的路由以匹配rails 3中的语法。我将如何更改此内容:

    map.connect "/stylesheets/:action.css", 
            :controller => "stylesheets", 
            :format => "css"

以便:action可以与样式表控制器中的操作匹配? 它会是这样的吗?

match 'stylesheets/:action.css', :to => "stylesheets#{:action}"

此外,rails 3的路由中:format的语法是什么?

2 个答案:

答案 0 :(得分:1)

你的解决方案几乎就在那里。您唯一需要更改的是在:action值中引用:to的方式。

match 'stylesheets/:action.css', :to => 'stylesheets#:action', :format => :css

如您所见,:format的语法没有改变。

答案 1 :(得分:0)

我认为这样会像:

match 'stylesheets/:action', :controller => :stylesheets, :defaults => { :format => :css }

或者您可以使用:constraints => { :format => 'json' }将您的路线限制为 .css 格式

我建议您仔细阅读http://guides.rubyonrails.org/routing.html