【问题标题】:How to import Model into a custom rake task?如何将模型导入自定义 rake 任务?
【发布时间】:2012-10-15 02:49:08
【问题描述】:

在我的 lib/tasks 文件夹中,我添加了一个新的 .rake 文件。

在 rake 任务中,我是这样做的:

p = Post.new( ....)
p.save!

当我运行我的任务时,我得到了错误:

rake aborted!
uninitialized constant Post

如何导入我的 Post 模型?

【问题讨论】:

    标签: ruby-on-rails ruby


    【解决方案1】:

    我认为您可能缺少环境声明。这对于 Rake 了解您的 Rails 环境是必要的。您的 rake 任务调用应如下所示:

    task :my_rake_task => [:environment] do
    
        # Your code here
    
    end
    

    如果这能解决问题,请告诉我!

    【讨论】:

      【解决方案2】:

      您想让任务依赖于 rails 环境。您可以通过在任务声明后指定 => :environment 来做到这一点:

      namespace :my_task do 
        desc "an example task"
        task :create_post => :environment do 
          Post.new .... # the rest of the implementation
        end
      end
      

      【讨论】:

        猜你喜欢
        • 2014-04-19
        • 2012-12-28
        • 2014-07-12
        • 2013-12-03
        • 2014-10-22
        • 1970-01-01
        • 1970-01-01
        • 2012-09-09
        • 2016-09-16
        相关资源
        最近更新 更多