flask框架基础
@app.route('/secret')
<br>
@login_required
<br>
def secret():
<br>
return 'This is a secret page, only logged-in users can see it.'
<br>
```
<br>
<br>
## 八、Flask 高级特性
<br>
<br>
### 8.1 蓝图
<br>
<br>
蓝图(Blueprint)用于将应用分解为多个模块,便于代码的组织和管理。每个蓝图可以包含自己的路由、模板和静态文件。
<br>
<br>
#### 8.1.1 创建蓝图
<br>
<br>
```
<br>
# auth.py
<br>
from flask import Blueprint, render_template
<br>
<br>
auth_bp = Blueprint('auth', __name__, url_prefix='/auth')
<br>
<br>
@auth_bp.route('/login')
<br>
def login():
<br>
return render_template('auth/login.html')
<br>
<br>
@auth_bp.route('/register')
<br>
def register():
<br>
return render_template('auth/register.html')
<br>
```
<br>
<br>
#### 8.1.2 注册蓝图
<br>
<br>
```
<br>
from auth import auth_bp
<br>
<br>
app.register_blueprint(auth_bp)
<br>
```
<br>
<br>
注册蓝图后,蓝图中定义的路由会被添加到应用中,访问/auth/login会执行auth_bp中的login()函数。
<br>
<br>
### 8.2 信号
<br>
<br>
Flask 的信号机制允许在特定事件发生时执行一些函数,如请求开始、请求结束等。可以使用blinker库来实现信号功能。
<br>