错误没有路由匹配rails 3.1.3中的[GET]"/ root_path"

JP.*_*JP. 0 routes ruby-on-rails-3

我正在使用Rails教程和Michael Hartl的示例书作为此问题的参考.

我在这里使用rails 3.1.3.使用命名路由的最佳方法是什么

的routes.rb

 root :to => "pages#home"
  match '/contact', :to => 'pages#contact' 
  match '/about', :to => 'pages#about'      
  match '/help', :to => 'pages#help' 
Run Code Online (Sandbox Code Playgroud)

当我从一个视图使用about访问这些路由时,我发现没有错误,但当我通过"about_path"访问它时,我收到一个错误.但在书中他们使用about_path.在rails 3.1中改变了命名路由的概念吗?

        <li><%= link_to "About", '*about*' %></li>
        <li><%= link_to "Contact", 'contact' %></li>
        <li><%= link_to "Home", 'root_path' %></li>
Run Code Online (Sandbox Code Playgroud)

如果我在上面的代码中使用"about_path",我会收到错误'找不到路线'

问题1.在视图中使用命名路由的最佳方法是什么?(最好的方式意味着我只需要在一个地方改变路线路径)

问题2.如何使用命名路由的概念访问root?(当我尝试使用'root_path'访问它时,我收到一条错误消息).

小智 5

我想你必须省略"'"arround ..._路径.