Ruby on Rails 3 - 路由错误,迈克尔·哈特尔的截屏视频来自 railstutorial.org



我正在关注迈克尔·哈特尔(Michael Hartl)railstutorial.org 的截屏视频。根据第5章,我改变了config/routes.rb 到:

SampleApp::Application.routes.draw do
  match '/contact', :to => 'pages#contact'
  match '/about',   :to => 'pages#about'
  match '/help',    :to => 'pages#help'
  root :to => 'pages#home'
end

和_footer.html.erb到:

  • <%= link_to"关于",about_path %>
  • <%= link_to"联系人",contact_path %>

和_header.html.erb:
 <% logo = image_tag("logo.png", :alt => "Sample App", :class => "round") %>
 <%= link_to logo, root_path %>
 <nav class="round">
    <ul>
      <li><%= link_to "Home", root_path %></li>
      <li><%= link_to "Help", help_path %></li>

我是Ruby on Rails的新手。我在浏览器中收到路由错误

没有与"/页面/联系人"匹配的路由

我正在使用 ruby 1.9.2p180 (2011-02-18 修订版 30909) [x86_64-linux],导轨 3.0.7 和 GEM 1.6.2请帮忙。

您的路线已设置一个级别。/pages/contact 没有路由,给定您的路由文件,正确的路由是"/contact"。

对于后来者,我只是遇到了同样的问题。教程中的代码不应在这些语句之后match end。如果你看一下config/routes.rb的最后一行,你会看到并end那里。这是您唯一需要的结局。

而不是:

SampleApp::Application.routes.draw do
  match '/contact', :to => 'pages#contact'
  match '/about',   :to => 'pages#about'
  match '/help',    :to => 'pages#help'
  root :to => 'pages#home'
end

它应该是:

SampleApp::Application.routes.draw do
  match '/contact', :to => 'pages#contact'
  match '/about',   :to => 'pages#about'
  match '/help',    :to => 'pages#help'
  root :to => 'pages#home'
 # All those commented out rules
 # All those commented out rules
 # All those commented out rules
end

相关内容

  • 没有找到相关文章

最新更新