ruby on rails语法错误与匹配

时间:2012-08-16 04:22:47

标签: ruby-on-rails ruby syntax match

使用ROR创建应用程序时,我在使用时不断收到语法错误:

FitsbyApp::Application.routes.draw do
  match '/help',    to: 'static_pages#help'
  match '/about',   to: 'static_pages#about'
  match '/contact', to: 'static_pages#contact'
end

我使用的是Rails 3.2.8。可能是我没有正确版本的Rails或Ruby?

这是我运行比赛时遇到的错误:

  

rb:245:在'load'中:   /Users/dannygaeta/rails_projects/fitsby_app/config/routes.rb:2:语法   错误,意外':',期待kEND(SyntaxError)

我为每场比赛得到了这个。我有什么想法吗?

3 个答案:

答案 0 :(得分:3)

您获得的错误(可能)来自to:中的尾随冒号。也就是说,我不是铁路专家,但不应该有问题的路线看起来像这样吗?

match '/help' => 'static_pages#help'

请参阅http://guides.rubyonrails.org/routing.html

答案 1 :(得分:2)

这听起来像是在使用ruby 1.8.x. Ruby 1.9为哈希引入了一种新的语法,

match 'foo', to: 'bar'

相同
match 'foo', :to => 'bar'

您的路线文件似乎使用较新的语法。

答案 2 :(得分:0)

在Rails 3中:

match 'logout' => 'user_sessions#destroy', :as => :logout

OR

match '/help' => 'static_pages#help'

在Rails 4中:

匹配'退出' => ' user_sessions#destroy',:as => :退出,通过:[:get,:post]