Ruby: Разработка подсистемы загрузки файлов на сайт
В рамках разработки проекта на Ruby в личном кабинете пользователя необходимо реализовать возможность загрузить файл с последующей возможностью его скачать. Эта возможность должна быть реализована таким образом, чтобы ею можно было воспользоваться на неограниченном количестве страниц, просто поместив нужную функцию/подпрограмму на страницу.
При загрузке файла должна сохраняться дата загрузки, и храниться все версии файлов.
Файлы должны храниться в каталогах (в структуре папок и файлов сайта).
Виды загружаемых файлов jpg, png, doc, xls.
Должна быть возможность настройки каталога для хранения (текущий сервер, удаленный сервер).
Использовать библиотеку CarrierWave.
Несколько полей привязанных к проекту, владельцу проекта, инвестору представленных
файлами изображений.
Загрузка файлов. Отображение превью файлов на соответствующей странице.
Загружаемые файлы должны отображаться на следующих страницах:
Страница проекта
Раздел: документы проекта
● Устав (jpg, png)
● Решение о учреждении Ю.Л (jpg, png)
● Приказ о назначении ген дира, глав буха (jpg, png)
● Утверждение штатного расписания (jpg, png)
● Решение о назначении ген директора советом директоров
К проекту также прикрепляю полное техническое задание на проект (для общего понимания структуры), а также модель данных. Задача исполнителя в разделе Подсистема загрузка файлов под номером 1: Организации загрузки файлов.