天天看點

Django中間件Middleware簡單使用代碼示例

功能類似flask的鈎子函數 Flask的鈎子函數與peewee.InterfaceError: (0, ‘’)

代碼示例

以下代碼解決peewee連結資料庫長連結斷開的問題

from django.utils.deprecation import MiddlewareMixin
from peewee import *

database = SqliteDatabase('my_app.db')

class DatabaseConnectMiddleware(MiddlewareMixin):
    def process_request(self, request):
        database.connect()

    def process_response(self, request, response):
        if not database.is_closed():
            database.close()
        return response      

配置生效

# settings.py

MIDDLEWARE = [
    'chart.mymiddlewares.DatabaseConnectMiddleware'
]      

參考:

Django進階之中間件