#ruby-on-rails
#ruby-on-rails
Вопрос:
Я просмотрел доступные параметры, и кажется, что все оптимизировано для загрузки изображений в качестве отображения. Мне просто нужна простая загрузка и извлечение файлов. Есть ли какие-нибудь хорошие варианты?
Ответ №1:
Скрепка — популярный выбор для загрузки и изменения размеров изображений, но с ее помощью можно загружать файлы любого типа (doc, zip, txt, pdf … что угодно). Настоятельно рекомендуется. https://github.com/thoughtbot/paperclip
Комментарии:
1. Вы получаете mu upvote 4 paperclip mate. Я никогда не говорил, что скрепка уродлива, новичкам 4 сложно отлаживать, что не так с их кодом при загрузке приложений в heroku.
Ответ №2:
Мне нравится carrierwave. Он имеет встроенную поддержку s3, не имеет обходного пути для настройки приложений на heeroku, в отличие от paperclip.
Комментарии:
1. Paperclip также имеет встроенную поддержку s3 … два ключа / значения в вашей модели… вряд ли это «обходной путь».
:storage => :s3, :s3_credentials => '#{Rails.root}/config/s3.yml'
.2. Да, это так, но меня беспокоил обходной путь, связанный с загрузкой приложений на heroku
3. Какой обходной путь? Вы устанавливаете Paperclip на использование s3, и все готово.
4. Для изменения изображений вам нужны разрешения на запись, которые heroku не разрешает
5. Правильно, именно поэтому вы загружаете их в s3.
Ответ №3:
Я использую Carrierwave для своего и был доволен этим. Я просто загружаю общие файлы, а не конкретно изображения. Он прост в реализации и обладает хорошими расширенными функциями, если они вам понадобятся позже. Он также интегрируется с Fog, чтобы упростить использование удаленных источников хранения (например, файлов s3 или rackspace cloud).
Ответ №4:
Преимущества Carrierwave:
С carrierwave вложение представляет собой отдельную модель, а не атрибут существующей модели, что может упростить работу.
Он поставляется с возможностью прикрепления файла через URL (пользователь передает URL-адрес в файл) вместо загрузки с помощью формы).
Он содержит какой-то способ запоминания файлов при сбоях проверки формы, хотя я никогда этим не пользовался и не уверен, как это делается… может быть, с двумя формами и ajax?
Похоже, вокруг него более активное и восторженное сообщество, и больше проектов расширяют его.
Для S3 они используют fog вместо aws-s3, и fog имеет гораздо более активную разработку.
Тем не менее, paperclip довольно хорош и активно поддерживается, и я не уверен, что он может быть более удобным для работы с изображениями по умолчанию.