Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Тут ограничение самого http же — он понятия ни о каких папках не имеет. И вы должны сами решать, как вы их хотите передавать. Каждый файл лучше грузить по-отдельности. Либо соседним параметром имя директории передавать и сохранять файл в эту директорию. Или же разрешить "/" в filename загружаемого файла и отключить их экранирование/замену в либе. В этом случае только надо самим обязательно от path traversal фильтры делать.
Наконец-то появился гем для загрузок, в котором все хорошо и все учтено! Читаю ридми и радуюсь, что больше не придется хачить carrierwave: все что сами допиливали тут можно настроить из коробки. Хотя еще не дочитал до конца даже :)
Лучший способ загрузки файлов в Ruby с помощью Shrine. Часть 1