Sobes.tech
Junior — Middle

Оё таҷрибаи таҳияи қабатҳои миёна (middleware) дар Django ё рамзҳои монанд доред?

sobes.tech AI

Ҷавоб аз AI

Бале, дар Django имкон дорад, ки қабатҳои миёнаи худро (middleware) барои коркарди дархостҳо ва ҷавобҳо дар сатҳи рамка эҷод кунед. Middleware синфест, ки дархостҳоро пеш аз расидан ба намоишҳо ва/ё ҷавобҳоро пеш аз фиристодан ба муштарӣ мегирад.

Масалан, middleware оддӣ, ки вақти коркарди дархостро сабт мекунад:

import time

class SimpleTimingMiddleware:
    def __init__(self, get_response):
        self.get_response = get_response

    def __call__(self, request):
        start_time = time.time()
        response = self.get_response(request)
        duration = time.time() - start_time
        print(f"Дархост ба {request.path}{duration:.4f} сония тӯл кашид")
        return response

Барои истифодаи middleware, бояд синфи онро ба рӯйхати MIDDLEWARE дар танзимоти Django илова кунед. Ин усул имкон медиҳад, ки функсияҳои гузаришӣ, ба монанди сабт, тасдиқ, идораи хато ва ғайра илова карда шаванд.