Class: CustomFields::Types::File::FileUploader

Inherits:
CarrierWave::Uploader::Base show all
Includes:
CarrierWave::MimeTypes
Defined in:
lib/locomotive/custom_fields.rb

Instance Method Summary collapse

Methods inherited from CarrierWave::Uploader::Base

#build_store_dir, #to_label, #to_liquid

Instance Method Details

#cache_dirObject



56
57
58
# File 'lib/locomotive/custom_fields.rb', line 56

def cache_dir
  "#{Rails.root}/tmp/uploads"
end

#guess_urlString

In some situations, for instance, for the notification email when a content entry is created, we need to know the url of the file without breaking the upload process. Actually, the uploaded file will be written on the filesystem after the email is sent.

Returns:

  • (String)

    The url to the soon uploaded file



50
51
52
53
54
# File 'lib/locomotive/custom_fields.rb', line 50

def guess_url
  this = self.class.new(model, mounted_as)
  this.retrieve_from_store!(model.read_uploader(mounted_as))
  this.url.to_s
end

#store_dirObject

Set correct paths



40
41
42
# File 'lib/locomotive/custom_fields.rb', line 40

def store_dir
  "sites/#{model.site_id}/content_#{model.class.model_name.demodulize.underscore}/#{model.id}/files"
end