Перенаправление обратно к переменной экземпляра django
Кажется, что это должно быть очень распространенным явлением, но я не могу найти ничего о том, как это сделать в интернете.
У меня есть страница, которая отображается после ввода двух битов информации: state
и brand
views.py выглядит следующим образом:
def detail(request):
try:
if request.method == 'POST':
state = request.POST['state']
brand = request.POST['brand']
territory_manager = TM.objects.filter(State__icontains=state).filter(Brand__icontains=brand),
return render(request,'homepage/detail.html', {'state': state, 'territory_manager':territory_manager})
else:
state = request.POST['state']
brand = request.POST['brand']
return render(request,'homepage/detail.html', f"No Results for {state} or {brand}")
except TM.DoesNotExist:
raise Http404("Info Does Not Exist")
На этой странице отображается отфильтрованное представление всех менеджеров территорий в моей базе данных, которые соответствуют этим двум критериям. На этой странице у меня есть кнопка обновления рядом с каждым менеджером территории, которая перенаправляет на страницу update_territory_manager, где я могу внести обновления в менеджера территории. После обновления у меня есть кнопка, которую пользователь может нажать, которая должна сохранить обновленную информацию в базе данных, а затем перенаправить. Я пытаюсь вернуться к отфильтрованному представлению всех менеджеров территорий, которые соответствуют этим критериям, но функция представления для страницы обновления не знает об этом, потому что этот экземпляр находится в предыдущей функции представления (на рисунке выше). Вот другая функция представления, о которой идет речь, в моем файле views.py. Любое направление будет оценено по достоинству.
def update_tm(request, tm_id):
tm = TM.objects.get(pk=tm_id)
form = NotesForm(request.POST or None, instance=tm)
if form.is_valid():
form.save()
return redirect('detail') #this is the part I want to redirect back to the previous filtered view of the territory managers rendered after the search
return render(request, 'homepage/update_tm.html', {'tm': tm, 'form': form})