Appearance
File
WARNING
You must manually require activestorage
and image_processing
gems in your Gemfile
.
ruby
# Active Storage makes it simple to upload and reference files
gem "activestorage"
# High-level image processing wrapper for libvips and ImageMagick/GraphicsMagick
gem "image_processing"
The File
field is the fastest way to implement file uploads in a Ruby on Rails app using Active Storage.
Avo will use your application's Active Storage settings with any supported disk services.
ruby
field :avatar, as: :file, is_image: true
Options
accept
Instructs the input to accept only a particular file type for that input using the accept
option.
ruby
field :cover_video, as: :file, accept: "image/*"
Default
nil
Possible values
image/*
, audio/*
, doc/*
, or any other types from the spec.
direct_upload
If you have large files and don't want to overload the server with uploads, you can use the direct_upload
feature, which will upload the file directly to your cloud provider.
ruby
field :cover_video, as: :file, direct_upload: true
link_to_resource
Wraps the content into an anchor that links to the resource.
Authorization
INFO
Please ensure you have the upload_attachments?
, delete_attachments?
, and download_attachments?
methods set on your model's pundit policy. Otherwise, the input and download/delete buttons will be hidden.
Related:
Deprecated options
The is_image
, is_audio
, and is_video
options are deprecated in favor of letting Active Storage figure out the type of the attachment. If Active Storage detects a file as an image, Avo will display it as an image. Same for audio and video files.