【问题标题】:Why can't rails3 find ApplicationController when it is in my application为什么rails3在我的应用程序中找不到ApplicationController
【发布时间】:2010-03-03 12:11:09
【问题描述】:

在 Rails3 应用程序中,我不断得到

..gems/activesupport-3.0.0.beta/lib/active_support/dependencies.rb:459:in 'load_missing_constant': uninitialized constant ApplicationController (NameError)

即使app/controllers/application_controller.rb 存在并且有效。有什么问题

【问题讨论】:

    标签: ruby-on-rails-3 applicationcontroller


    【解决方案1】:

    这可能有几个原因,但让我感到困惑的是我的主目录中有一个config.ru 文件:

    Rails3 试图找出应用程序的根目录在哪里。这样做的逻辑是开始在目录../railties/lib/rails/application 中查找,然后沿着路径查找带有config.ru 的目录并假设它是应用程序根目录 - 如果找不到,则当前工作目录是应用程序根目录。

    如果您的 Gem 安装在您的主目录的子目录中(RVM、Local Gems 和 Bundler 执行此操作),那么这将在某一时刻检查您的主目录中是否存在 config.ru。如果存在,它将尝试从您的主目录加载应用程序。

    解决方案是在您的主目录中没有config.ru

    【讨论】:

    • 另一种解决方案是在应用程序的根目录中创建一个有效的 config.ru 文件来启动 Rails 应用程序。
    猜你喜欢
    • 2017-05-01
    • 2012-04-13
    • 1970-01-01
    • 2021-12-01
    • 1970-01-01
    • 2012-02-27
    • 2014-07-22
    • 1970-01-01
    • 2013-04-17
    相关资源
    最近更新 更多