【发布时间】: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
在我的 lib/tasks 文件夹中,我添加了一个新的 .rake 文件。
在 rake 任务中,我是这样做的:
p = Post.new( ....)
p.save!
当我运行我的任务时,我得到了错误:
rake aborted!
uninitialized constant Post
如何导入我的 Post 模型?
【问题讨论】:
标签: ruby-on-rails ruby
我认为您可能缺少环境声明。这对于 Rake 了解您的 Rails 环境是必要的。您的 rake 任务调用应如下所示:
task :my_rake_task => [:environment] do
# Your code here
end
如果这能解决问题,请告诉我!
【讨论】:
您想让任务依赖于 rails 环境。您可以通过在任务声明后指定 => :environment 来做到这一点:
namespace :my_task do
desc "an example task"
task :create_post => :environment do
Post.new .... # the rest of the implementation
end
end
【讨论】: