- Peewee 教程
- Peewee-主页
- Peewee-概述
- Peewee-数据库类
- Peewee-模型
- Peewee-字段类
- Peewee-插入新记录
- Peewee-选择记录
- Peewee-筛选器
- Peewee-主键和复合键
- Peewee-更新现有记录
- Peewee-删除记录
- Peewee-创建索引
- Peewee-约束
- Peewee-使用 MySQL
- Peewee-使用 PostgreSQL
- Peewee-动态定义数据库
- Peewee-连接管理
- Peewee-关系和联接
- Peewee-子查询
- Peewee-排序
- Peewee-计数和聚合
- Peewee-SQL 函数
- Peewee-检索行元组/字典
- Peewee-用户定义的运算符
- Peewee-原子事务
- Peewee-数据库错误
- Peewee-查询构建器
- Peewee-与 Web 框架集成
- Peewee-SQLite 扩展
- Peewee-PostgreSQL 和 MySQL 扩展
- Peewee-使用 CockroachDB
- Peewee 实用资源
- Peewee-快捷指南
- Peewee-实用资源
- Peewee-讨论
Peewee-与 Web 框架集成
Peewee 可以与大部分 Python Web 框架 API 顺畅协作。每当 Web 服务器网关接口 (WSGI) 收到来自客户端的连接请求时,就会建立与数据库的连接,然后在传送响应后关闭连接。
在基于 **Flask** 的 Web 应用程序中使用时,连接会对 **@app.before_request** 装饰器产生影响,并在 **@app.teardown_request** 断开。
from flask import Flask from peewee import * db = SqliteDatabase('mydatabase.db') app = Flask(__name__) @app.before_request def _db_connect(): db.connect() @app.teardown_request def _db_close(exc): if not db.is_closed(): db.close()
Peewee API 也可以用于 **Django** 中。要实现此操作,请在 Django 应用程序中添加一个中间件。
def PeeweeConnectionMiddleware(get_response): def middleware(request): db.connect() try: response = get_response(request) finally: if not db.is_closed(): db.close() return response return middleware
中间件会添加到 Django 的设置模块中。
# settings.py MIDDLEWARE_CLASSES = ( # Our custom middleware appears first in the list. 'my_blog.middleware.PeeweeConnectionMiddleware', #followed by default middleware list. .. )
Peewee 可以很方便地用在其他框架中,例如 Bottle、Pyramid 和 Tornado 等。
广告