ActiveStorage для личных файлов S3

До сих пор я использовал Paperclip для загрузки некоторых файлов в S3. Некоторые из этих файлов не являются общедоступными, и Paperclip позволяет загружать некоторые файлы как частные со следующим битом:

has_attached_file :image, styles: { large: "2000x2000", small: "1200x1200", thumb: "250x250"}, :s3_permissions => :private

Сейчас Paperclip устарела. Я подумываю о переходе на Active Storage, хотя я не нашел никакой возможности сделать некоторые из моих файлов приватными.

Есть ли что-то, что можно настроить в Active Storage, чтобы это разрешить?

1 ответ

Решение

Все файлы являются частными с ActiveStorage по умолчанию. Если вы хотите иметь возможность загружать некоторые файлы с общедоступным acl (с общедоступным URL), а другие с частным acl (с истекшим URL), вы можете использовать мой патч здесь: https://gist.github.com/dinatih/dbfdfd4e84faac4037448a06c9fdc016

из этого комментария: https://github.com/rails/rails/issues/31419

Другие вопросы по тегам