Как добавить строку в конец редиректа Django в представлении?

У меня есть продукт на моей платформе, и когда определенный пользователь совершает действие, я хочу перенаправить его на example.com/product/product-slug/#SectionInWebsite.

Однако я не могу найти способ добавить "#SectionInWebsite" в конец функции перенаправления.

return redirect('ProductSingle', product.slug, "#SectionInWebsite")

Возможно, это может помочь вам, используя реверс.

return redirect(reverse('ProductSingle', product.slug, + '#SectionInWebsite')

сделайте это :

return redirect(reverse('ProductSingle',product.slug) + '#SectionInWebsite')

Это сработало для меня (мне пришлось использовать другие имена на моей машине, но это должно сработать):

# views.py
return redirect('{}#sectionInWebsite'.format(reverse('ProductSingle', kwargs={'product_slug':product.slug})))

То есть, если предположить, что ваш urls.py имеет что-то вроде этого:

# urls.py
...
path('ProductSingle/<str:product_slug>', views.ProductSingle, name='ProductSingle'),
...

Это просто вариация ответа, представленного здесь, применительно к вашей ситуации.

Вернуться на верх