Module: CarrierWave::Uploader::Url

Extended by:
ActiveSupport::Concern
Includes:
Configuration, CarrierWave::Utilities::Uri
Included in:
Base
Defined in:
lib/carrierwave/uploader/url.rb

Constant Summary

Constants included from CarrierWave::Utilities::Uri

CarrierWave::Utilities::Uri::SAFE_STRING, CarrierWave::Utilities::Uri::UNSAFE

Instance Method Summary collapse

Instance Method Details

#to_sObject



35
36
37
# File 'lib/carrierwave/uploader/url.rb', line 35

def to_s
  url || ''
end

#url(options = {}) ⇒ Object

Parameters

Hash

optional, the query params (only AWS)

Returns

String

the location where this file is accessible via a url



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/carrierwave/uploader/url.rb', line 17

def url(options = {})
  if file.respond_to?(:url) && !(tmp_url = file.url).blank?
    file.method(:url).arity.zero? ? tmp_url : file.url(options)
  elsif file.respond_to?(:path)
    path = encode_path(file.path.sub(File.expand_path(root), ''))

    if host = asset_host
      if host.respond_to? :call
        "#{host.call(file)}#{path}"
      else
        "#{host}#{path}"
      end
    else
      (base_path || "") + path
    end
  end
end