FastApi-14- 文件上传 -2
UploadFile
接上篇,实际开发中,我们需要在上传文件的时候拿到文件本体以及文件的元数据信息。
但是实际操作中,你会发现,File
对象是可以使用 len
函数获取大小的,但是 File
对象没有名称,类型等属性。而 UploadFile
对象虽然有名称,类型等属性,但是其没有直接获取文件大小的属性。
通过阅读源码,我们会发现,UploadFile
是有一个 file
属性的,这样我们就可以拿到 file
对象,但是这个 file
对象是 SpooledTemporaryFile
类型的,我们可以通过 read
方法拿到 file
文件对象内容,再通过 len
函数即可得出其大小。
视图函数代码
复制代码
信息展示页面
复制代码
选择多个文件,点击显示文件信息:
可以看到,我们的需求已经实现。
Tip
有的朋友可能会发现,你的文件上传框无法选择多个文件,这是怎么回事呢?答案是:你的 input
标签缺少了 multiple
属性。
multiple
属性规定输入字段可选择多个值。如果使用该属性,则字段可接受多个值。
复制代码
如上,即可实现多个文件的上传。
感谢您的阅读,别忘了关注,点赞,评论,转发四连哟!
版权声明: 本文为 InfoQ 作者【Python测试和开发】的原创文章。
原文链接:【http://xie.infoq.cn/article/1f5f5486ac7a8274434959152】。文章转载请联系作者。
评论