routes.rb的未知错误

时间:2013-02-11 19:55:17

标签: ruby-on-rails

嘿,我是Rails的新手,当我去localhost时,我一直收到这个错误:3000 /

路由错误

没有路线匹配[GET]“/” 尝试运行rake路线以获取有关可用路线的更多信息。

这就是我的routes.rb文件。

SampleApp::Application.routes.draw do
  get "static_pages/about"
  get "static_pages/contact"
  get "static_pages/help"
  get "static_pages/home"

end

我的views文件夹看起来像这样

views/static_pages/about.html.erb
views/static_pages/contact.html.erb
views/static_pages/help.html.erb
views/static_pages/home.html.erb

我运行了rake routes命令并得到以下内容:

Davids-MacBook-Air:sample_app DavidStevenson$ rake routes
   static_pages_home GET /static_pages/home(.:format)    static_pages#home
   static_pages_help GET /static_pages/help(.:format)    static_pages#help
  static_pages_about GET /static_pages/about(.:format)   static_pages#about
static_pages_contact GET /static_pages/contact(.:format) static_pages#contact

任何想法都出错了?

3 个答案:

答案 0 :(得分:5)

您只是忘了定义根路由。把它放在routes文件的末尾:

root to: 'static_pages#home'

您将在访问localhost:3000/时看到static_pages_home页面。

检查this guide以获取有关路线的所有信息。

修改

以下是routes文件的外观:

SampleApp::Application.routes.draw do
  get "static_pages/about"
  get "static_pages/contact"
  get "static_pages/help"
  get "static_pages/home"

  root to: 'static_pages#home'
end

答案 1 :(得分:1)

您没有设置根路由,"/"正在尝试与之匹配。把它放在最后。

# config/routes.rb
root to: "static_page#home"

答案 2 :(得分:1)

添加根路径

root :to => 'static_pages#home'

把它放在路线块的末尾