def login(request):
form = None
if request.method == 'POST':
form = LoginForm(request.POST)
if form.is_valid():
data = form.data
if '@' in data['identity']:
kwargs = {'email': data['identity'].lower()}
else:
kwargs = {'username': data['identity'].lower()}
try:
user = User.objects.get(**kwargs)
if user is not None and user.check_password(data['password']):
login(request, user)
if 'keep_connected' in data:
request.session.set_expiry(0)
next_page = request.GET.get('next', None)
redirect_path = reverse('home')
if next_page is not None and next_page != '':
redirect_path = next_page
user_account = Account.get_by_user(user=user)
request.session['user_avatar'] = user_account.user_avatar
request.session.save()
return redirect(redirect_path)
except User.DoesNotExist:
pass
return render(request, 'index.html', {'form': form})
评论列表
文章目录