class Dragonfly::Model::Attachment::ConfigProxy

Attributes

spec[R]

Public Class Methods

new(spec, block) click to toggle source
# File lib/dragonfly/model/attachment_class_methods.rb, line 8
def initialize(spec, block)
  @spec = spec
  instance_eval(&block)
end

Private Instance Methods

add_callbacks(name, *callbacks, &block) click to toggle source
# File lib/dragonfly/model/attachment_class_methods.rb, line 40
def add_callbacks(name, *callbacks, &block)
  if block_given?
    spec.callbacks[name] << block
  else
    spec.callbacks[name].push(*callbacks)
  end
end
after_assign(*callbacks, &block) click to toggle source
# File lib/dragonfly/model/attachment_class_methods.rb, line 17
def after_assign(*callbacks, &block)
  add_callbacks(:after_assign, *callbacks, &block)
end
after_unassign(*callbacks, &block) click to toggle source
# File lib/dragonfly/model/attachment_class_methods.rb, line 21
def after_unassign(*callbacks, &block)
  add_callbacks(:after_unassign, *callbacks, &block)
end
copy_to(accessor, &block) click to toggle source
# File lib/dragonfly/model/attachment_class_methods.rb, line 25
def copy_to(accessor, &block)
  after_assign do |a|
    self.send "#{accessor}=", (block_given? ? instance_exec(a, &block) : a)
  end
  after_unassign{|a| self.send("#{accessor}=", nil) }
end
default(path) click to toggle source
# File lib/dragonfly/model/attachment_class_methods.rb, line 32
def default(path)
  spec.default_path = path.to_s
end
method_missing(meth, *args, &block) click to toggle source
Calls superclass method
# File lib/dragonfly/model/attachment_class_methods.rb, line 48
def method_missing(meth, *args, &block)
  if key = meth.to_s[/^storage_(.*)$/, 1]
    raise NoMethodError, "#{meth} is deprecated - use storage_options{|a| {#{key}: ...} } instead"
  else
    super
  end
end
storage_options(opts=nil, &block) click to toggle source
# File lib/dragonfly/model/attachment_class_methods.rb, line 36
def storage_options(opts=nil, &block)
  spec.storage_options_specs << (opts || block)
end