在生产迁移某些资产的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'
,但它没有帮助。
答案 0 :(得分:0)
这个问题似乎已经成为命名空间&#34; assets&#34;的无意义选择,这似乎已经干扰了定义这个命名空间的rails。对于任何以类似问题结束此处的人:尝试将名称空间更改为唯一的名称,并查看错误是否消失:)