2017-02-23 26 views
1

Это скорее вопрос любопытства.Рельсы каталог для сохранения загруженных пользователями пользователей

Прямо сейчас я делаю store_dir 'uploader_type/model.id (например: profile_picture/1/).

Но я действительно хочу знать, что лучше всего назвать каталоги для хранения загруженных пользователями пользователей?

ответ

0

Поверьте, по моему опыту создание структуры каталогов создаст больше проблем, чем принесет пользу. Папки плотно соединяют файл с каталогом, что в конечном итоге сделает вашу жизнь намного сложнее найти данный файл. Кроме того, если в один прекрасный день вам нужно будет перенести папки (особенно на S3), вам нужно будет создать для этого сценарий, поскольку это не простая задача.

Почему бы не сохранить всех пользователей загруженных фотографий до store_dir 'uploads/изображений'?

Чем, если вам нужно, чтобы создать уникальное имя, которое вы можете, например,

  • 1. Создайте MD5 образа т.е. [md5_hash] .jpg
  • 2. Транспорт «Структура каталога в файл»(им если вы используете рубин -> "# {model.id} - {# model.class.to_s.downcase} .jpg"

предполагая, что у вас есть Profile модель имодель вы бы в конечном итоге со следующей структурой внутри uploads/images

  • 1_profile.jpg
  • 2_profile.jpg
  • 1_car.jpg
  • 2_car.jpg