File Uploads
$bolt.filesCount()
Get number of uploaded files.
count = $bolt.filesCount()$bolt.file(nIndex)
Get uploaded file by index (1-based). Returns a list with :name, :field, :type, :size.
f = $bolt.file(1)
? f[:name] # "photo.jpg"
? f[:field] # "avatar"
? f[:type] # "image/jpeg"
? f[:size] # 102400$bolt.files()
Get all uploaded files as a list of file lists.
aFiles = $bolt.files()
for f in aFiles
? f[:name]
next$bolt.fileByField(cName)
Get first file matching a form field name.
f = $bolt.fileByField("avatar")
? f[:name]$bolt.fileSave(nIndex, cPath)
Save uploaded file to disk.
f = $bolt.file(1)
$bolt.fileSave(1, "./uploads/" + f[:name])Example: Handle file upload
@post("/upload", func {
if $bolt.filesCount() > 0
for i = 1 to $bolt.filesCount()
f = $bolt.file(i)
$bolt.fileSave(i, "./uploads/" + f[:name])
next
$bolt.json([:uploaded = $bolt.filesCount()])
else
$bolt.badRequest("No files uploaded")
ok
})