flask上传文件
app.py
from flask import request, Flask
from flask_wtf import FlaskForm
from flask_bootstrap import Bootstrap
from wtforms.validators import DataRequired
from wtforms import SubmitField, FileField
from werkzeug.utils import secure_filename
import os
app = Flask(__name__, static_url_path="/")
app.config['SECRET_KEY'] = 'sdafsda*&*'
bootstrap = Bootstrap(app)
class SendForm(FlaskForm):
file = FileField('文件', validators=[DataRequired()])
submit = SubmitField('上传')
@app.route("/push", methods=['GET', 'POST'])
def push():
form = SendForm()
if form.validate_on_submit():
f = request.files['file'] # 获取文件
filename = secure_filename(f.filename) # 去除中文
f.save(os.path.join('static\\files', filename))# 保存到static/files文件夹(从flaskapp最外层查找)
return '上传成功'
return render_template('push.html', form=form)
if __name__ == "__main__":
app.run('0.0.0.0', 9999, 1)
push.html
{% extends 'bootstrap/base.html' %}
{% imporrt 'boostrap/wtf.html' as wtf %}
{% block content %}
<div class='container'>
{{ wtf.quick_form(form) }}
</div>
{% endblock content %}