Flask 框架是一种轻量型Web框架(相对于Django框架),可以使用 Python 中的 flask 包来设计一个服务器。
flask 包使用的核心思想是,建立一个路由-函数的映射(每一个route都有一个对应的函数)。此处提供一个基础的例子,其中使用了
@app=Flask(__ name __)
@app.route('\',methods=...) def ...
return render_template(...)
request.form
request.method
falsh("...")
app.secret_key(...)
app.run()
这些关键函数。
此外,对于一个服务器而言,对表单的验证也是一个关键过程,这一过程的实现基于WTForms包。例子中的整个过程也是基于装饰器@机制进行的。将在后面对这两点进行补充。
from flask import Flask # 引入Flask的定义
app=Flask(__name__) # import_name 参数设置为 __name__(通常是这样)
# 对首页(路由)设置一个相应的函数
@app.route('/')
def index():
return render_template('home.html') # 渲染模板,这是没有参数的情况
# 对内容(路由)设置一个相应的函数
@app.route('/articles', methods=['GET', 'POST'])
def articles():
form = ArticleForm(request.form)
# 使用request.form获取客户端提交的表单,并且进行验证,此处ArticleForm的定义未给出,它是基于WTForm 表单(验证)包设计的。
if request.method == 'POST' and form.validate(): # 如果用户提交表单,并且表单验证通过
flash('表单正确', 'success') # Flashes a message to the next request.
articles=['abc']
return render_template('articles.html', articles=articles) # 渲染模板,这是有参数的情况.
# 运行服务器进程
if __name__ == '__main__':
app.secret_key='secret123'
# 设置会话密钥,由于flash的使用是在session中进行的。
app.run(debug=True) #运行进程