Замечательнейший changeset номер 7586 теперь позволяет реализовать описанный в сабже функционал прямо в методе save() формы авторизации:
from django import newforms as forms
from django.contrib import auth
class LoginForm(forms.Form):
username = forms.CharField(...)
password = forms.CharField(...)
remember_me = forms.BooleanField(...)
user_cache = None
...
def save(self, request):
cd = self.cleaned_data
user = self.user_cache
auth.login(request, user)
if not 'remember_me' in cd or not cd['remember_me']:
request.session.set_expire(0)
return user
Вот и не используй после этого Django из транка.
0 комментариев:
Отправить комментарий