I am using fleximage to handle images. Its great. I can upload, edit
and view the image just fine. But, now I want to allow users to delete
their image. Can someone please explain how.
In the UI when a user is editing the model with the image, currently I
display the image and give users the option to upload a new file. I am
changing it so that a user selects to either keep the image, upload a
new image or clear their image. In the controller I check if the clear
image param was passed in and then delete the image from the table.
I have tried:
@mod.data = nil
this returns the error:
Exception in edit_module: You have a nil object when you didn’t expect
it!
You might have expected an instance of Array.
The error occured while evaluating nil.size
It looks like it is trying to resize the image which is now nil.
Also tried:
@mod.data = ’ ’
This didn’t do anything
I am all ears on how to delete the image. Thanks.
Model
class LibResource < FlexImage::Model
self.require_image_data = false
pre_process_image :size => ‘250x250’
Controller
if request.post?
@mod.attributes = params[:mod] #updates the model as usual
…
if params[:image_options]
option = params[:image_options]
if option == ‘Remove my image’
@mod.data = nil
@mod.save!
end
end