Подскажите что я не правильно сделал
в html
<a href="{% url 'back_url' %}"> Назад </a>
в urls
path('back_url', views.back_url, name='back_url'),
в view
def back_url(request):
referer = request.META.get('HTTP_REFERER')
return HttpResponseRedirect(referer)
По
итогу при нажатии кнопки назад я получаю ту же страницу, потому что во вьюшке
referer
мне возвращает ту страницу с которой я нажал назад)))
как правильно сделать ??
Все неправильно сделал. Во-первых, лишняя вьюха с маршрутам тут нах не нужна - она не только избыточна, но и бесполезна. Во-вторых, ты не ознакомился, как работает HTTP перед тем, как пользоваться заголовками. В итоге, информацию об изначальном источнике перехода ты безвозвратно теряешь, т.к. никуда не сохранил. В третьих, начал что-то писать, не подумав предварительно над архитектурой. Результат предсказуемый.
Убери это порно, маршрут тоже убери, ссылку возврата проверяй, во-первых, на наличие (ее может не быть вообще), во-вторых - на принадлежность именно твоему сайту. Если проверки проходит - передавай на фронт и там уже используй под гиперссылки. Напрямую, а не через три пизды залупу через какие-то левые адреса и вьюхи.