【问题标题】:Models are not being loaded/accessed in engine tasks from engine模型未在引擎的引擎任务中加载/访问
【发布时间】:2017-06-20 16:09:03
【问题描述】:

在引擎 rake 任务中访问引擎模型会抛出 NameError: uninitialized constant。模型是命名空间并正确定义的。可以从挂载的应用程序的rails控制台访问

但不是来自引擎耙任务

【问题讨论】:

    标签: ruby-on-rails ruby rails-engines ruby-on-rails-4.2


    【解决方案1】:

    如果您需要挂载 Rails 应用程序,请尝试将 environment 依赖项添加到您的任务中。举个例子:

    namespace :foo do
      desc 'Super awesome task'
      task super_awesome: [:environment] do
        # etc
      end
    end
    

    【讨论】:

      【解决方案2】:

      包含 => :environment 将告诉 Rake 加载完整的应用程序环境,让相关任务可以访问类、帮助程序、模型等。没有 :environment,您将无法访问任何这些额外内容.

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-03-02
        • 2012-11-03
        • 1970-01-01
        • 1970-01-01
        • 2022-07-12
        • 1970-01-01
        相关资源
        最近更新 更多