Django возврат перенаправления на внешний URL не работает

У меня проблемы с получением перенаправления на работу для внешних URL-адресов.

Следующее находится в файле views.py:

def link_out(request):
    products = products_for_cart(user=request.user)
    product = get_object_or_404(products, pk=product_id)   
    if product.is_link():
        variant_id = request.POST.get('variant')
        variant = ProductVariant.objects.get(id = variant_id)
        print(variant.external_url)
        response = redirect(variant.external_url)
        print('before redirect')
        return response
    print('after redirect')

'before redirect' и URL-адрес печатаются в оболочке, однако браузер никогда не перенаправляет на внешний URL-адрес.

https://www.google.co.uk/
before redirect
INFO django.server "POST /en/products/t-shirt-6/add/ HTTP/1.1" 302 0 [PID:31664:Thread-3]
INFO django.server "POST /en/products/t-shirt-6/add/ HTTP/1.1" 302 0 [PID:31664:Thread-3]
INFO django.server "POST /en/products/t-shirt-6/add/ HTTP/1.1" 302 0 [PID:31664:Thread-3]

Есть две вещи, которые кажутся мне интересными: три POST после перенаправления (все распечатки INFO идут по три??), и что перенаправление не выполняется в браузере.

Мои вопросы: откуда перенаправление возвращается из файла views.py и что может быть причиной того, что посредник не перенаправляет?

Спасибо

0 ответов

Другие вопросы по тегам