Module: ActiveScaffold::Bridges::Paperclip::PaperclipBridgeHelpers

Defined in:
lib/active_scaffold/bridges/paperclip/paperclip_bridge_helpers.rb

Class Method Summary collapse

Class Method Details

.generate_delete_helper(klass, field) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/active_scaffold/bridges/paperclip/paperclip_bridge_helpers.rb', line 10

def self.generate_delete_helper(klass, field)
  return if klass.method_defined?(:"delete_#{field}=")

  klass.attr_reader :"delete_#{field}"
  klass.define_method "delete_#{field}=" do |value|
    value = (value == 'true') if value.is_a?(String)
    return unless value

    # passing nil to the file column causes the file to be deleted.  Don't delete if we just uploaded a file!
    send("#{field}=", nil) unless send(field).dirty?
  end
end