When I use the 'multiple' attribute I can't get it to work:
<input type="file" id="files" name="files[]" multiple />
The controller action method body:
request.getFileNames().each {
println it
}
The problem is that this iteration returns only one file. Can anyone help me to obtain all the files uploaded? (I'm using grails 2.0.3)
you have to get at the multiple file part of the request.
I think you can do
request.getMultiFileMap()
or
request.multiFileMap.documentFile
Grails 2 uses Spring 3 which uses the MultipartRequest class to handle this.
This class has a getFiles(String name) function which you can use in your case. So this will result in the following code:
request.getFiles("files[]").each { file ->
log.debug(file.originalFilename)
}
I'm using this
request.multiFileMap.get("files[]")
来源:https://stackoverflow.com/questions/10425891/multiple-file-input-type-upload-in-grails