- 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 等。
廣告