2013-10-28 2 views
0

я не нашел часть об этом в документации, поэтому я буду очень рад, если кто-то может помочь мне =)Grails и формы множественного ввода

У меня есть эта форма на моей странице, чтобы загрузить несколько фотографий, используя мультипликатора для моего ввода:

<g:uploadForm controller="photo" action="add" autocomplete="off"> 

    <label for="files">Files to upload:</label> 
    <input type="file" id="files" name="files" multiple="multiple" /> 
    <input type="hidden" id="MAX_FILE_SIZE" name="MAX_FILE_SIZE" value="300000" /> 
    <g:submitButton name="add" class="save button medium" value="ADD" /> 

</g:uploadForm> 

И сейчас, я не знаю, как «отдельные» файлов в моем контроллере.

Это нормально для одного файла, используя request.getFile (..), но как я могу обработать свойство «multiple» моего поля?

Спасибо за чтение,

Александр

ответ

2

Вы можете сделать это в вашем контроллере:

List fileList = request.getFiles('files') // 'files' is the name of the input 
fileList.each { file -> 
    println 'filename: ' + file.getOriginalFilename() 
} 

request.getFiles(<param>) возвращает список CommonsMultipartFile объектов. Вы можете использовать эти объекты, чтобы получить имена файлов (например, в данном примере) или содержимое файла (file.getInputStream())

+0

спасибо Micha ! – abincepto

0

Вы получили ответ, но это только для записи

request.multiFileMap?.each { name, map -> //do the logic }

Смежные вопросы