我一直在跟随一个教程@ Noupe学习Rails的意图。它进展顺利,应用程序工作,但我收集它是为Rails 2编写的,所以有一些废弃的代码片段使用。
虽然我已经解决了大部分问题,但我还有一个关于路由的问题。教程中的Rails 2代码是:
ActionController::Routing::Routes.draw do |map|
map.resources :posts
map.connect ':controller/:action/:id'
map.connect ':controller/:action/:id.:format'
end
这工作得很好,但它是旧代码。我尝试将代码重写如下:
Twitter::Application.routes do
resources :posts
match ':controller/:action/:id'
match ':controller/:action/:id.:format'
end
当我尝试访问http://localhost:3000/posts -
时会出现错误路由错误没有匹配"/posts"的路由
谁能建议我哪里错了?我确实注意到,如果我在第一行写twitter(而不是twitter),我会得到一个编译器错误-因为我的应用程序被命名为twitter,我认为这可能是问题,但它似乎不是。
任何帮助都非常感谢!
似乎您错过了对draw方法的调用。尝试将第一行更改为以下内容:
Twitter::Application.routes.draw do