我正在用Django制作一个网站,其中我正在制作动态url。然而,我是相当新的编程,并没有能够找出如何使动态url超过1个参数。
我正在制作一个名为"kartotek"的网站,它是由变量"kl_id"定义的用户特定的,因此有一个动态的URL与以下路径:
path('kartotek/<str:kl_id>/', views.kartotek, name="kartotek"),
在这个页面上,是否有一个按钮可以让你选择一个病人,然后进入另一个名为"reg"的URL ?使用以下路径:path('reg/<str:kl_id>/<str:pt_id>/', views.reg, name="reg"),
在views.py中有以下代码:
def kartotek(request, kl_id):
kliniknavn = Klinik.objects.get(navn=kl_id)
E_patient = kliniknavn.patient_set.all()
context = { 'kliniknavn':kliniknavn, 'E_patient':E_patient}
return render(request,'DentHelp/kartotek.html', context )
def reg(request ,kl_id , pt_id):
kliniknavn = Klinik.objects.get(navn=kl_id)
ptid = Patient.objects.get(id_nr=pt_id)
context = {'ptid':ptid, 'kliniknavn':kliniknavn}
return render(request,'DentHelp/reg.html', context)
我认为问题是模板代码,我有点困惑如何制作,我正在尝试这个:
{% for patient in E_patient %}
<a href="{% url 'reg' klinik.navn, patient.id_nr %}" class="btn btn-primary">Vælg patient</a>
{% endfor %}
有什么建议吗?
您是否尝试将值显式地分配给适当的属性名,如:
href="{% url 'reg' kl_id=klinik.navn, pt_id=patient.id_nr %}