Как реализовать перенаправление на одну и ту же страницу в представлениях Django?
Я пишу интернет-магазин на Django. Как сделать перенаправление на ту же страницу? Это нужно для удаления товара из всплывающей корзины. Функция удаления из корзины:
def cart_remove_retail(request, slug):
cart = Cart(request)
product = get_object_or_404(Product, slug=slug)
cart.remove(product)
return #???
когда я пытаюсь:
return HttpResponseRedirect(request.path_info)
Я получаю запрос по принципу round-robin.
Спасибо!
Для перенаправления на ту же страницу в django view вы можете использовать :
return redirect('.')
Предполагая, что вы хотите перенаправить на страницу, с которой отправляется запрос cart_remove_detail, вы можете использовать
return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/'))
Альтернативно добавьте параметр next к запросу cart_remove_detail.
from django.http import HttpResponseRedirect
def cart_remove_retail(request, slug):
cart = Cart(request)
product = get_object_or_404(Product, slug=slug)
cart.remove(product)
return HttpResponseRedirect(request.META.get('HTTP_REFERER'))
Взято из : Перенаправление на ту же страницу после метода POST с использованием представлений на основе классов