我想从CarrierWave上传附件,并将其保存为数据库表中的Base64字符串,而不是保存上传路径。
我完全不知道从哪里开始这个过程。我尝试创建以下内容:
........
before_create :process_image
mount_uploader :image_upload, ImageUploader
.......
attr_accessible :name, :image_upload, :authentication_type
attr_reader :image
private
def process_image
if !self.image_upload.path.nil?
self.image = Base64.encode64(file.open(self.image_upload.path).read)
self.image_upload = nil
end
end
但是,在上传过程中我收到以下错误:
NoMethodError(未定义的方法`image_upload_will_change!'
我确信这是微不足道的,然而,似乎我是唯一想要尝试这一点的人。