diff options
author | David Heinemeier Hansson <david@loudthinking.com> | 2017-07-20 17:34:13 -0500 |
---|---|---|
committer | David Heinemeier Hansson <david@loudthinking.com> | 2017-07-20 17:34:13 -0500 |
commit | 1c85eecee02ebf0c0148de807fbb1a9e9573af8a (patch) | |
tree | 0d5548f150ae825210f7ba04d4bc9fee9d686fbc /lib/active_storage | |
parent | 1a9026b485b9b1da0f34c526d4c901406074c508 (diff) | |
download | rails-1c85eecee02ebf0c0148de807fbb1a9e9573af8a.tar.gz rails-1c85eecee02ebf0c0148de807fbb1a9e9573af8a.tar.bz2 rails-1c85eecee02ebf0c0148de807fbb1a9e9573af8a.zip |
Move controllers to default engine location for auto loading
Diffstat (limited to 'lib/active_storage')
-rw-r--r-- | lib/active_storage/direct_uploads_controller.rb | 14 | ||||
-rw-r--r-- | lib/active_storage/disk_controller.rb | 38 |
2 files changed, 0 insertions, 52 deletions
diff --git a/lib/active_storage/direct_uploads_controller.rb b/lib/active_storage/direct_uploads_controller.rb deleted file mode 100644 index 99ff27f903..0000000000 --- a/lib/active_storage/direct_uploads_controller.rb +++ /dev/null @@ -1,14 +0,0 @@ -require "action_controller" -require "active_storage/blob" - -class ActiveStorage::DirectUploadsController < ActionController::Base - def create - blob = ActiveStorage::Blob.create_before_direct_upload!(blob_args) - render json: { url: blob.url_for_direct_upload, sgid: blob.to_sgid.to_param } - end - - private - def blob_args - params.require(:blob).permit(:filename, :byte_size, :checksum, :content_type, :metadata).to_h.symbolize_keys - end -end diff --git a/lib/active_storage/disk_controller.rb b/lib/active_storage/disk_controller.rb deleted file mode 100644 index 16a295d00d..0000000000 --- a/lib/active_storage/disk_controller.rb +++ /dev/null @@ -1,38 +0,0 @@ -require "action_controller" -require "active_storage/blob" -require "active_storage/verified_key_with_expiration" - -require "active_support/core_ext/object/inclusion" - -# This controller is a wrapper around local file downloading. It allows you to -# make abstraction of the URL generation logic and to serve files with expiry -# if you are using the +Disk+ service. -# -# By default, mounting the Active Storage engine inside your application will -# define a +/rails/blobs/:encoded_key/*filename+ route that will reference this -# controller's +show+ action and will be used to serve local files. -# -# A URL for an attachment can be generated through its +#url+ method, that -# will use the aforementioned route. -class ActiveStorage::DiskController < ActionController::Base - def show - if key = decode_verified_key - blob = ActiveStorage::Blob.find_by!(key: key) - - if stale?(etag: blob.checksum) - send_data blob.download, filename: blob.filename, type: blob.content_type, disposition: disposition_param - end - else - head :not_found - end - end - - private - def decode_verified_key - ActiveStorage::VerifiedKeyWithExpiration.decode(params[:encoded_key]) - end - - def disposition_param - params[:disposition].presence_in(%w( inline attachment )) || "inline" - end -end |