2013-08-02 13 views
5

settings.pyDjango AUTH_PROFILE_MODULE zmienia adres URL logowania?

AUTH_USER_MODEL = "app_registration.MyUser" 
AUTH_PROFILE_MODULE = 'app_registration.MyUserProfile' 

models.py

class MyUserProfile(models.Model): 
    user = models.ForeignKey(MyUser, unique=True) 
    ... 
    MyUser.profile = property(lambda u: MyUserProfile.objects.get_or_create(user=u)[0]) 

login.html

<form id="login_form" method="post" action="."> 
.... 
<input type="hidden" name="next" value="" /> 
<input type="submit" value="LogIn" /> 
</form> 

więc zrobiłem to do stworzenia modelu MyUserProfile dla mojego niestandardowy model MyUser. Wszystko działa dobrze, z wyjątkiem tego, że po zalogowaniu (localhost/accounts/login) adres URL jest przekierowywany na htp://localhost:9999/accounts/profile zamiast strony indeksu, zgodnie z tym, co podano w ukrytym wprowadzeniu formularza.

Gdzie jest ten adres przekierowania zdefiniowany .. ??

Odpowiedz

4

Zastosowanie LOGIN_REDIRECT_URL:

LOGIN_REDIRECT_URL

Domyślnie: '/ accounts/profile /'

URL których wnioski są przekierowywane po zalogowaniu gdy widok contrib.auth.login nie dostaje następny parametr.

Jest to używane przez dekoratora login_required(), na przykład.