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

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

Class Method Summary collapse

Class Method Details

.generate_delete_helper(klass, field) ⇒ Object



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

def self.generate_delete_helper(klass, field)
  klass.class_eval <<-EOF, __FILE__, __LINE__ + 1 unless klass.methods.include?("delete_#{field}=")
    attr_reader :delete_#{field}
        
    def delete_#{field}=(value)
      value = (value == "true") if String === value
      return unless value
        
      # passing nil to the file column causes the file to be deleted. Don't delete if we just uploaded a file!
      self.#{field} = nil unless self.#{field}.dirty?
    end
  EOF
end