Проблема Django | Not Found при обновлении записи

This is the update form template front end

this is the issue I get when click on form submit button

This is the coding of update template

Другие кодировки, которые я сделал

***urls.py добавления пути веб-приложения ***:
path('update/updaterecord/int:id', views.updaterecord, name='updaterecord'),

views.py файл веб-приложения : обновить информацию о кодировке:

def updaterecord(request, id):
  first = request.POST['first']
  last = request.POST['last']
  member = Members.objects.get(id=id)
  member.firstname = first
  member.lastname = last
  member.save()
  return HttpResponseRedirect(reverse('index'))

Ваш <form action=""> имеет слеш в конце, просто удалите его и все будет хорошо. url должен соответствовать тому, что находится в вашем urlpatterns[]:

path('update/updaterecord/int:id', views.updaterecord, name='updaterecord'),

Результирующий url будет иметь вид: members/update/updaterecord/8

Ваш action="" является относительным по отношению к текущему URL, поскольку не имеет ведущей косой черты.

Поскольку вы находитесь на /members/update/8, сегмент action URL updaterecord/8 превращает его в абсолютный URL /members/update/updaterecord/8 вы видите 404.

Если вы хотите, чтобы ваша форма была нацелена на текущую страницу (что правильно в данном случае), просто опустошите ее или избавьтесь от нее:

<form method="post">

в этом случае достаточно.

Кроме того, пожалуйста, изучите модули форм и общие представления Django; в настоящее время вы делаете много ручной работы, которая вам не нужна.

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