2013-08-22 105 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