3

我正在通过 Ruby on Rails 教程:通过示例学习 Rails。我在题为“主要是静态页面”的部分中。

在名为 public/hello.html 的公共目录中创建一个 HTML 页面后,我得到一个错误,应该如图 3.3 所示。我的问题是,当我尝试创建页面并使其出现在 localhost:3000/hello.html 时,我看不到呈现的页面。相反,我收到一条错误消息,显示“路由错误没有路由匹配”/hello.html

我没有对路由进行任何更改;我认为 Rails 应该足够聪明地找到“hello.html”,因为它与“public/index.html”页面位于同一目录中,并且页面名称是“hello.html”?

你能解释一下吗?

4

5 回答 5

4

如果你像我一样通读这本书,我让服务器从前一章开始运行,所以它仍然从 demo_app 目录加载 index.html。

于 2010-10-29T22:30:41.510 回答
1

您正在遵循旧指南。较新的版本

http://ruby.railstutorial.org/chapters/static-pages#sec:green

告诉你需要修改config文件夹中的routes.rb。我花了大约一个小时为此哭泣。

于 2011-03-31T23:12:19.100 回答
0

再次查看您的应用程序目录并确保将文件保存在(我的情况)中:

C:\Users\Nnamdi\rails_projects\sample_app\public\hello.html

我有同样的问题,但意识到我没有将它保存在正确的目录中..上面的解决方案应该可以工作..cheers

于 2013-01-26T21:28:42.103 回答
0

将文件移动到公用文件夹。这对我有用。

我使用的提示是 Rails 默认为 Public 文件夹提供服务。所以我想,如果我把它放在公共文件夹中,那应该可以工作。你会看到它与索引文件一致,所以我认为这也是证据。

于 2011-04-20T04:08:38.030 回答
0

你确定你输入正确吗?看起来您输入的是“localhost:3000/[space]hello.html”而不是“localhost:3000/hello.html”。请仔细检查。

于 2010-10-24T23:32:01.397 回答