urlmiddleware je aplikace, Django, který vám umožní definovat middleware ve vašem projektu Django založený na konfiguraci url spíše než přidávání middleware globálně na každý požadavek.
Proč?
Přidání middleware na celém světě, není vždy dobrá věc. Možná budete chtít pouze to, aby projevily na některých místech ve vašem webu. Aplikace třetích stran může rovněž pak zahrnují jejich definice middleware v url.py souboru a odstranit potřebu pro vás změnit globální nastavení.
Quick Start
Instalace urlmiddleware:
PiP nainstalovat urlmiddleware
Není nutné, aby ji přidat do nainstalovaných aplikací, nicméně, vy musíte se zaregistrovat jeden globální třídu middleware, které budou následně řídit middleware url založené na:
MIDDLEWARE_CLASSES = (
& Nbsp; # ...
& Nbsp; # přidat urlmiddleware za všechny ostatní middleware.
& Nbsp; "urlmiddleware.URLMiddleware",
)
Začít přidávat middleware do projektu ve vašich url.py souborech níže svou normální definicí URL:
middlewarepatterns = vzory ('',
& Nbsp; url (r '^ myapp /', MyMiddleWareClass),
)
Typickým příkladem je použití této techniky k přidání přihlášení potřebné k celé dílčích částí vašeho url stromu. Nejprve musíte vytvořit LoginRequiredMiddleware:
od django.conf nastavení dovozních
od django.contrib.auth.views import přihlášení
od django.http dovozu HttpResponseRedirect
třída LoginRequiredMiddleware (objekt):
& Nbsp; def process_request (self, požadavek):
& Nbsp; login_path = settings.LOGIN_URL
& Nbsp; pokud request.path = login_path a request.user.is_anonymous ():
& Nbsp; pokud request.POST:
& Nbsp; návrat login (žádost)
& Nbsp; jinak:
& Nbsp; návrat HttpResponseRedirect ('% s další =% s?'% (Login_path, request.path))
Pak se ve svém urls.py souboru:
od myapp.middleware import LoginRequiredMiddleware
middlewarepatterns = vzory ('',
& Nbsp; url (r '^ účty /', LoginRequiredMiddleware),
)
! Hotovo
Požadavky na :
- Python
- Django
Komentáře nebyl nalezen