环境配置之后,接下来入手的是对flask的学习。
经过网上查阅资料加以尝试实现,得出一点对于flask的看法:flask的一个目的在于,帮助.py代码内部实现对.html文件的跳转,并设置功能函数供.html内的按键来调用。此篇便是简单总结以上相关的经历。
.py文件内,导入flask包后,使用最多的语句显然是:
@app.route('/')
@app.route('/函数名')
第一条会绑定其下一行的函数,并在app run()执行后,以本地根目录的形式展现函数的功能;而第二条的,会绑定函数名对应的函数,app run()执行后,以本地根目录+/函数名的目录展现函数功能
以上两条对应的函数下,都可以有返回某个html的语句,便是最简单的.py内向指定html的跳转:
@app.route('/upload')
def upload():
return render_template('upload.html')
上述仅涉及到 @app.route() 的第一个参数,如果结合第二个参数,就可以实现html内调用.py函数实现文件上传功能的目的。
如:函数uploader()上条的route,指定了get和post的功能:
@app.route('/uploader', methods=['GET', 'POST'])
def uploader():
if request.method == 'POST':
f = request.files['file'] # 上传文件,并保存到本地文件夹下
f.save(os.path.join(app.config['UPLOAD_FOLDER'],f.filename))
return render_template('result.html')
else:
return render_template('upload.html')
对应html内有关键语句action="/uploader",唤起uploader地址的函数uploader(),完成函数post的功能:
<form action="/uploader" method="POST" enctype="multipart/form-data">
<input type="file" name="file" />
<input type="submit" value="上传" />
</form>