Rake Task不会使用Paperclip加载模型

时间:2014-06-09 07:50:59

标签: ruby-on-rails ruby-on-rails-3 rake paperclip rake-task

在生产迁移某些资产的rake任务中,我想要一个使用Paperclip的模型。但我收到了错误

NoMethodError: undefined method `has_attached_file' for #<Class:0x00000006c12680>
~/.rvm/gems/ruby-2.0.0-p247/gems/activerecord-3.2.18/lib/active_recor/dynamic_matchers.rb:55:in `method_missing'
/app/models/user.rb:74:in `<class:User>'

第74行宣布附件:

has_attached_file :photo, styles: { original: '1024x1024>', s64: ["64x64#", "jpg"] },
:convert_options => { original: "-quality 85 -strip", s64: "-quality 85 -strip" },
processors: [:trimmer, :cropper], url: '/system/product/:attachment/:id/:style/:filename',
path: ':rails_root/public/system/product/:attachment/:id/:style/:filename'

来自Rakefile:lib / task / asset.rake

task :preload => :environment do
   require 'user'
end

我在'用户'之前尝试require 'paperclip',但它没有帮助。

1 个答案:

答案 0 :(得分:0)

这个问题似乎已经成为命名空间&#34; assets&#34;的无意义选择,这似乎已经干扰了定义这个命名空间的rails。对于任何以类似问题结束此处的人:尝试将名称空间更改为唯一的名称,并查看错误是否消失:)