module ActiveScaffold::Bridges::Paperclip::PaperclipBridge

Public Class Methods

included(base) click to toggle source
# File lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb, line 19
def self.included(base)
  base.alias_method_chain :initialize, :paperclip
end

Public Instance Methods

initialize_with_paperclip(model_id) click to toggle source
# File lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb, line 5
def initialize_with_paperclip(model_id)
  initialize_without_paperclip(model_id)
  return unless model.respond_to?(:attachment_definitions) && !model.attachment_definitions.nil?

  update.multipart = true
  create.multipart = true

  model.attachment_definitions.keys.each do |field|
    configure_paperclip_field(field.to_sym)
    # define the "delete" helper for use with active scaffold, unless it's already defined
    ActiveScaffold::Bridges::Paperclip::PaperclipBridgeHelpers.generate_delete_helper(model, field)
  end
end

Private Instance Methods

configure_paperclip_field(field) click to toggle source
# File lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb, line 25
def configure_paperclip_field(field)
  columns << field
  columns[field].form_ui ||= :paperclip
  columns[field].params.add "delete_#{field}"

  [:file_name, :content_type, :file_size, :updated_at].each do |f|
    columns.exclude("#{field}_#{f}".to_sym)
  end
end