【问题标题】:Rails / Rack / Config.ru导轨 / 机架 / Config.ru
【发布时间】:2011-09-14 08:54:32
【问题描述】:

尝试按照“Ruby on Rails 3 教程”运行rails s,得到以下错误:

[path]\config.ru:1 in 'require': no such file to load -- fake_app

我在 PATH 中找到了 fake_app.rb 的位置(我认为这是 rails/rack 试图找到的)

config.ru的内容是默认生成的:

require "fake_app"

run Rack::Test::FakeApp

我正在运行 rails 3.0.8 和 Windows 7

感谢您帮助这个新手!

【问题讨论】:

  • 您可以尝试用require ::File.expand_path('../config/environment', __FILE__) 替换您的require 行,看看效果是否更好?如果这样可以消除您的第 1 行错误,您可能需要将第 2 行替换为 Run FakeApp::Application
  • 顺便说一句,我的回答完全是“新手回答”——我不是 config.ru 文件的正确结构方面的专家,我只是查看了我的旧 Rails 3 教程项目目录,发现它是这样配置的:-)
  • 非常感谢。我试试看

标签: ruby-on-rails rack webrick


【解决方案1】:

你是用rails new [appname] 命令生成的吗?默认的 Rails 3.0 config.ru 文件应该看起来更像这样:

require ::File.expand_path('../config/environment', __FILE__)
run ApplicationName::Application

如果此时您所做的只是安装 Ruby 和 Rails,我会重新运行生成器以获取可以工作的东西。

另外,由于您使用的是 Windows,我想推荐 Rails Installer 用于您的环境安装和设置。它减轻了很多启动痛苦。

这可能就是您所说的教程,但我也强烈推荐 Michael Hartl's Ruby on Rails Tutorial 来深入了解 Rails 3。section about generating your first application 在这种情况下可能会很方便。

【讨论】:

  • 是的,config.ru 是使用 rails new [appname] 生成的。不知道为什么我没有得到标准的默认值。另外,是的,它是我正在关注的 Hartl 教程。将尝试 Rails 安装程序。
  • 对不起,很密集,但如果应用程序名称是 demo_app 并且我运行:rails new demo_app 我应该如何期望 config.ru 读取?
  • 我的答案中列出的 require 行,最后一行是 run DemoApp::Application
  • 由于某种原因在 Windows 本机下仍然无法正常工作。虽然你的答案完全正确。最后最终选择了 Cygwin 并在那里运行 rails。问题已解决。谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-30
  • 2016-01-08
  • 2020-07-18
  • 2021-05-02
  • 1970-01-01
相关资源
最近更新 更多