Carrierwave无法删除图像

我现在正在使用Carrierwave上传图片。 一切都很好,除了一个, – 当我添加复选框以删除上传的图像时,我收到错误:“无法批量分配受保护的属性:remove_image”。

形成:

...   ... 

模型:

 class Manufacturer  /^[az\d\-]*$/, :message => "az, 0-9 \' - \' ONLY" default_scope order('position ASC') before_destroy :remember_image after_destroy :remove_img protected def remember_image @image_name = self[:image] end def remove_img File.delete("#{Rails.root}/public/images/manufacturer/#{@image_name}") File.delete("#{Rails.root}/public/images/manufacturer/thumb_#{@image_name}") end end 

提供者:

 class ManufacturerUploader  [300, 300] version :thumb do process :resize_to_fit => [150, 150] end def extension_white_list %w(jpg jpeg gif png) end def filename "#{secure_token(10)}.#{file.extension}" if original_filename.present? end protected def secure_token(length=16) var = :"@#{mounted_as}_secure_token" model.instance_variable_get(var) or model.instance_variable_set(var, SecureRandom.hex(length/2)) end end 

我认为Carrierwave必须利用:remove_image,但不要这样做。 这段代码有什么问题?

只需将remove_image添加到attr_accessible列表即可