2017-10-02 1 views
0

Je veux vérifier si l'utilisateur ne loged (ne pas une session) il aller à login.html fichier et s'il loged (une séance), il aller à profile.html, mais je veux vérifier à urls.pysi la condition dans urls.py - dajngo

Mes projets Arbre:

manage.py 
url 
----setting.py 
mr_url 
-----templates 
---------url 
------------profile.html 
------------login 
-----------------logon.html 
-----views.py 
-----models.py 
-----urls.py 

Mon urls.py:

from django.conf.urls import url 
from . import views 
from django.views.generic import TemplateView 

urlpatterns =[ 
    url(r'^$', views.profile, name='profile'), 
] 

Comment puis-je vérifier la session prévue pour l'utilisateur ou non urls.py ????

Note: Je peux le faire en views.py mais je ne le veux pas!

+0

Vous pouvez le gérer depuis views.py facilement. Pourquoi voulez-vous résoudre ce problème avec urls.py? –

Répondre

0

Vous pouvez utiliser login_required décorateur:

from django.contrib.auth.decorators import login_required 

urlpatterns =[ 
    url(r'^$', login_required(views.profile), name='profile'), 
] 

Si l'utilisateur n'est pas connecté, il sera redirigé vers la page de connexion dont le défaut est accounts/login. Vous pouvez le personnaliser en définissant LOGIN_URL dans vos paramètres.

J'espère que ça aide!