Я создаю веб-сайт электронной коммерции, позволяю гостевым пользователям добавлять товары в свои корзины, сохраняя cart_id
в сеансе, и когда они переходят к оформлению заказа, я перенаправляю их для входа в систему следующим образом в представлении оформления заказа
if not request.user.is_authenticated:
login_url = reverse('accounts:login')
check_out_url = reverse('cart:checkout')
redirect_url = "{}?next={}".format(login_url, check_out_url)
return redirect(redirect_url)
# checkout process here
Работает, однако cart_id
больше не находится в сеансе.Если я не использую следующий параметр и просто перенаправляю на login_url
, cart_id
остается в сеансе.
PS: То же самое происходит с login_required_decorator
Есть ли способсохранить данные сессии нетронутыми?