我创建了一个视图,用户可以在其中编辑患者信息,并且当我使用自定义用户模型时,我必须创建一个自定义更新/删除视图。当我通过url手动输入视图时,这些视图才起作用。通过锚标记放置对它们的链接引用我收到了无法访问pk的错误,我尝试在此处遵循以下多个答案并在YT上显示vid,但错误仍然存在
Views.py
def PatientUpdateView(request,pk=None):
patient = get_object_or_404(models.Patient, pk=pk)
form = forms.PatientForm(request.POST or None ,instance=patient)
if form.is_valid() :
patient = form.save(commit=False)
patient.save()
messages.success(request,"patient updated!")
context = {
'patient': patient,
'form': form
}
return render(request,'patients/patient_edit_form_success.html',context)
else:
context = {
'patient' : patient,
'form': form,
}
return render(request, 'patients/patient_edit_form.html', context)
这是我在锚标记中的称呼方式
<a class="btn btn-info btn-sm" href="{% url 'patients:patient_update' patient.pk %}">Open</a>
我尝试了
pk = patient.pk
pk = pk
以及其他许多调用方式。
urls.py 这是我使用的网址格式
path('update/<int:pk>', views.PatientUpdateView, name='patient_update'),
答案 0 :(得分:0)
尝试将<a>
标签更改为以下内容:
<a class="btn btn-info btn-sm" href="{% url 'patient_update' patient.pk %}">Open</a>
提供网址名称时,无需名称间隔。另外,请记住在模板文件中{% load static %}
。