2013-08-22 56 views
0

这个问题可能已经回答多次,但我想了解这个概念,因为我是完全新的Ruby on Rails的,我希望有人能向我解释。Ruby on Rails的routes.rb中

我下面的教程创建一个小的Twitter发布的应用程序及其要求我把下面的route.rb文件并运行的WEBrick,看看它的工作。

ActionController::Routing::Routes.draw do |map| 
    map.resources :posts 
    map.connect ':controller/:action/:id' 
    map.connect ':controller/:action/:id.:format' 
end 

有这个问题,我只要一运行“轨道服务器”服务器启动后几秒钟,退出,并给这个

..RubyProjects /叽叽喳喳/配置/ routes.rb中是:57:在'在“块:未初始化不断ActionDispatch ::路由::路线 (NameError)...

很多其他错误,但我怀疑他们都是被上面的一个创造。我正在运行Ruby 1.9.3p429和Rails 4.0.0.rc2。

当我在寻找一个解决方案时,我意识到这可能是由于我使用的是早期版本中已经在Rails 4中进行了更改的语法,但我无法确定新版本的正确语法。

在这种情况下,新版本的语法是什么?

+0

如果您遵循正在使用旧的语法的例子,你将不得不与来自这个问题搁置一段时间地狱。我会推荐一个更新的教程,比如这个http://ruby.railstutorial.org/ruby-on-rails-tutorial-book –

回答

0
get ':controller(/:action(/:id(.:format)))' 

写优先级最低的(最后一行)这条线。

0

像这样做: - 在config/routes.rb文件

<yourprojectname>::Application.routes.draw do 
resources :products 
    match ':controller(/:action(/:id))(.:format)' 
end