我在安装了flask - reploaded的python虚拟环境中使用flask_uploads。(我提到这一点,因为我注意到几个版本的flask_uploads,不知道这些有什么不同)
from flask_uploads import configure_uploads, ALL, UploadSet
all = UploadSet('all', ALL)
configure_uploads(app, all)
then in a flask route
form = MyForm()
if form.validate_on_submit():
filename = form.all.data.filename
fname = all.save(form.all.data)
filename和fname并不总是相同的。Fname将filename中的空格替换为"_"。如果上传了重复的文件名,则fname会出现附加"_01", "_02"等到上传的文件名
只是想检查我是否正确解释观察到的行为,因为我找不到相关的源代码。
警告:虽然我已经检查了我正在使用的虚拟环境中的安装包,但我有点被pip冻结而没有显示"flask_uploads"作为安装包。我的"导入flask_uploads"是从其他地方拉flask_uploads (?)
参考,我正在使用的虚拟环境
pip freeze
.....
click==8.1.3
colorama==0.4.5
Flask==2.1.2
Flask-Reuploaded==1.2.0
Flask-WTF==1.0.1
importlib-metadata==4.12.0
itsdangerous==2.1.2
Jinja2==3.1.2
MarkupSafe==2.1.1
Werkzeug==2.1.2
WTForms==3.0.1
zipp==3.8.0
我想如果很多人都在使用flask - reploaded,那么教程、演示和问题的数量似乎很小。(希望我错了)
包所有者在github问题中回答了这个问题。https://github.com/jugmac00/flask-reuploaded/issues/131