Bla*_*man 1 ruby ruby-on-rails
在我的lib/tasks文件夹中,我添加了一个新的.rake文件.
在rake任务中,我这样做:
p = Post.new( ....)
p.save!
Run Code Online (Sandbox Code Playgroud)
当我运行我的任务时,我收到错误:
rake aborted!
uninitialized constant Post
Run Code Online (Sandbox Code Playgroud)
导入Post模型需要做什么?
我在想你可能错过了环境宣言.这是必要的,以便Rake了解您的Rails环境.您的rake任务调用应该如下所示:
task :my_rake_task => [:environment] do
# Your code here
end
Run Code Online (Sandbox Code Playgroud)
如果能解决问题,请告诉我!
您想让任务依赖于 rails 环境。您可以通过在任务声明之后指定 => :environment 来做到这一点:
namespace :my_task do
desc "an example task"
task :create_post => :environment do
Post.new .... # the rest of the implementation
end
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
726 次 |
| 最近记录: |