Sha256: 546386e4e7d74048ca6adeafd91a65f8a872803e9fa1ccd21b44629c06caaa66
Contents?: true
Size: 922 Bytes
Versions: 3
Compression:
Stored size: 922 Bytes
Contents
module Lanes class Asset < Lanes::Model mount_uploader :file, Lanes::Concerns::AssetUploader belongs_to :owner, polymorphic: true validates :owner, set: true after_update :remove_changed_file, if: lambda{ file_changed? } def serializable_hash(options = nil) values = super values.delete('file') values.merge!(file.as_json[:file].stringify_keys) values['original'] = { 'url' => values.delete('url') } values end def store_uploaded_file(f) ext = File.extname(f[:filename]) if ext.blank? ext = '.' + FastImage.type(f[:tempfile]).to_s end self[:file] = ::Lanes::Strings.random + ext file.store!(f) end protected def remove_changed_file self.file_was.remove! end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
lanes-0.5.6 | lib/lanes/asset.rb |
lanes-0.5.5 | lib/lanes/asset.rb |
lanes-0.5.0 | lib/lanes/asset.rb |