Sha256: 29e19318b0d4166fcb4c057704412076a04ed70add4ea3f22f923716278f6ecc
Contents?: true
Size: 641 Bytes
Versions: 3
Compression:
Stored size: 641 Bytes
Contents
module Paperdragon module Model def self.included(base) base.extend ClassMethods end module ClassMethods def processable(name, attachment_class=Attachment) include attachment_accessor_for(name, attachment_class) end private # Creates Avatar#image that returns a Paperdragon::File instance. def attachment_accessor_for(name, attachment_class) mod = Module.new do # TODO: abstract that into Uber, we use it everywhere. define_method name do attachment_class.new(self.image_meta_data, {:model => self}) end end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
paperdragon-0.0.4 | lib/paperdragon/model.rb |
paperdragon-0.0.3 | lib/paperdragon/model.rb |
paperdragon-0.0.2 | lib/paperdragon/model.rb |