【发布时间】:2015-08-10 05:56:59
【问题描述】:
我正在关注 Rails 教程的在线版本。第 3 章中的 Sample_app 在本地可以正常工作,但是当推送到 Heroku 时,会找到主页,但找不到其他页面。在尝试查看 About 页面后运行 heroku 日志会给我(以及其他许多)上面的错误:
2015-08-09T02:56:43.916991+00:00 app[web.1]: ActionController::RoutingError (No route matches [GET] "/about"):
我的 routes.rb 文件是
Rails.application.routes.draw do
root 'static_pages#home'
get 'static_pages/help'
get 'static_pages/about'
end
我已仔细按照指示进行操作。我尝试删除并重新创建 Heroku 文件。我进行了网络搜索并尝试了一些无济于事的事情。我的 gemfile 直接来自本书的在线版本,它使用的是当前版本。
已解决:#thedanotto 让我运行 heroku run rake routes,这表明帮助和关于页面被定向到 {root}/static_pages/about 而不是 {root}/about。我仍然很困惑为什么教程给出了似乎没有按预期工作的关于路线,并欢迎任何进一步的评论,但我将其标记为已解决。
【问题讨论】:
-
运行命令会得到什么:heroku run rake routes
-
好建议!我得到 Running
rake routes附加到终端... up, run.3908 Prefix Verb URI Pattern Controller#Action root GET / 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 果然,当我运行enigmatic-beach-9653.herokuapp.com/static_pages/about 时,页面出现了!我将在下面更新我的问题。感谢您的帮助! -
我将添加一个您可以接受的详细答案。
-
为了将问题标记为已解决,请不要编辑问题。相反,请mark an answer as accepted。这样一来,您和被接受的用户就可以获得一些声誉积分,并且您可以帮助其他人稍后找到正确的答案。
标签: ruby-on-rails heroku railstutorial.org