【发布时间】:2019-07-07 17:17:19
【问题描述】:
我创建了一个视图,用户可以在其中编辑患者信息,并且由于我使用的是自定义用户模型,因此我必须创建自定义更新/删除视图。当我通过 url 手动输入视图时,视图正在工作,但是当我通过锚标记放置对它们的链接引用我收到一个错误,它无法访问 pk,我尝试在此处遵循许多答案和 YT 上的视频,但错误仍然存在
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 这是我使用的 url 模式
path('update/<int:pk>', views.PatientUpdateView, name='patient_update'),
【问题讨论】:
-
请分享您的
urls.py。 -
您确定错误不位于
patient_edit_form_success.html(或另一个)吗? -
刚刚在帖子中编辑过
-
不,它位于我试图放置按钮的视图中。
-
该错误是在首次加载页面时发生还是在成功 POST 后发生?
标签: django django-templates django-views