通过app实例来注册路由。
from flask import Flask
app = Flask(__name__)
@app.route('/hello')
def hello():
print("has called hello function.")
return 'hello, nzh.'
def hello_two():
print("换一种注册路由的方式")
return 'hello, nzh'
app.add_url_rule('/hello_two', view_func=hello_two)
app.run(debug=True)
通过Flask的实例app的add_url_rule()方法也能达到同样的效果。
我们可以跳转到add_url_rule()方法中看一下它是如何定义的。
还有一种方式:注册蓝图:
介绍一下两个常用的:
1.static_folder:
和应用对象不同,蓝图对象创建时不会默认注册静态目录的路由。需要我们在 创建时指定static_folder 参数。如图中我们设置参数为‘static’,也就是项目结构中的static文件夹。
这样我们可以使用地址/static/main/layout.css访问static目录下的css、js、image文件了
2.url_prefix
默认的值为 '/' ######用一个demo.py来解释吧(这个demo也要在虚拟环境下运行)
# -*- coding:utf-8 -*-
from flask import Flask,Blueprint
main = Blueprint('main',__name__)
@main.route('/')
def v_index():
return 'main page'
app = Flask(__name__)
app.register_blueprint(shop,url_prefix='/')
app.register_blueprint(admin,url_prefix='/admin')
app.run()