Skip to content

Commit 82d150f

Browse files
committed
Add support for multiple file uploads for params.files
1 parent 749c537 commit 82d150f

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

src/kemal/param_parser.cr

+5-3
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ module Kemal
1515
@query = HTTP::Params.new({} of String => Array(String))
1616
@body = HTTP::Params.new({} of String => Array(String))
1717
@json = {} of String => AllParamTypes
18-
@files = {} of String => FileUpload
18+
@files = {} of String => Array(FileUpload)
1919
@url_parsed = false
2020
@query_parsed = false
2121
@body_parsed = false
@@ -71,11 +71,13 @@ module Kemal
7171
next unless upload
7272

7373
filename = upload.filename
74+
name = upload.name
7475

7576
if !filename.nil?
76-
@files[upload.name] = FileUpload.new(upload)
77+
@files[name] ||= [] of FileUpload
78+
@files[name] << FileUpload.new(upload)
7779
else
78-
@body.add(upload.name, upload.body.gets_to_end)
80+
@body.add(name, upload.body.gets_to_end)
7981
end
8082
end
8183

0 commit comments

Comments
 (0)