Я загрузка файла на сервер в Ruby On RailsКак распаковать файл в Ruby on Rails?
Обычно, это текстовый файл, и я сохранить его в модели как поле «файл» в представлении ActiveRecord с другими областями, такими как название представления .. и т. д.
Однако пользователь может также отправить почтовый файл. В этом случае zip-файл должен распаковываться, и для каждого файла в zip необходимо создать новое Представление с теми же текстовыми полями, но с текущим файлом.
Как это сделать?
Я просмотрел примеры распаковки в сети, но большинство из них используют каталог для распаковки файлов. Я не уверен, что мне нужно это, как в текущем методе создания SubmissionsController, получен файл-объект, и я предполагаю, что путь сохранения файла к нему автоматически генерируется при вызове метода сохранения отправки. Поэтому я думал, что, возможно, мне нужно распаковать zipfile в память, чтобы получить массив объектов файла, а затем создать новое представление с каждым файловым объектом, но с теми же полями, а затем позволить ActiveRecord генерировать пути к файлам для каждого, когда он сохраняет их в база данных. Возможно, я ошибаюсь, потому что я немного новый для Rails и Ruby.
Я вижу, так как я могу получить массив объектов файлов из архива? – siamii
@ bizso09, я только что обновил, чтобы показать, как перебирать содержимое. Существует также простой учебник, объясняющий его здесь: http://www.markhneedham.com/blog/2008/10/02/ruby-unzipping-a-file-using-rubyzip/ –
спасибо. Я попробую сейчас – siamii