2010-02-16 8 views
1

J'utilise la version 0.8 django-enregistrementdjango-enregistrement, pour corriger un petit problème

J'utilise le django-enregistrement par défaut et le système Django auth sans tweak. J'ai remarqué un petit problème, une fois que je me connecte en tant qu'utilisateur, si je vais à/comptes/login /, je reçois toujours le formulaire de connexion, comment puis-je changer qu'il redirige un utilisateur connecté à l'URL racine principale / au lieu d'apporter à nouveau ce formulaire?

Merci

Répondre

1

Vous pouvez envelopper la vue de connexion de Django et faire le chèque déjà authentifiées utilisateurs là-bas:

from django.contrib.auth.views import login 
from django.http import HttpResponseRedirect 

def mylogin(request, **kwargs): 
    if request.user.is_authenticated(): 
     return HttpResponseRedirect('/') 
    else: 
     return login(request, **kwargs) 

Ensuite, il suffit d'utiliser ce point de vue au lieu de django.contrib.auth.views.login dans votre urls.py

+0

merci beaucoup, à Où vais-je mettre cette méthode? models.py de mon application? – Hellnar

+0

c'est une vue, donc il se sent probablement le plus à la maison dans un views.py :) –

Questions connexes