我无法弄清楚为什么我的网址与我的变量不一致。这样
<form method="post" action="{% url 'p4_descriptor_update' 1 form.instance.pk %}" class="js-descriptor-update-form">
它有效,但是这个
<form method="post" action="{% url 'p4_descriptor_update' projectid form.instance.pk %}" class="js-descriptor-update-form">
结果:
反转'p4_descriptor_update'并带有参数'('',249)'不 找到。尝试了2种模式
我可以在模板中调用{{ projectid }}
并显示正确的数字(即1)
urls.py
url(r'^ajax/(?P<id>[0-9]+)/(?P<pk>\d+)/p4_descriptor_update/$', views.p4_descriptor_update, name='p4_descriptor_update'),
views.py
class phase4 (APIView):
renderer_classes = [TemplateHTMLRenderer]
template_name = 'szenario/phase4.html'
def get(self, request, id, format=None):
projectid = id
context = {... 'projectid': projectid}
return Response(context)
不确定是否相关,但该按钮不在主模板中,但包含在{% incldue .. %}
中。如果需要,我可以添加JS或所需的任何进一步信息。
答案 0 :(得分:0)
您可以使用关键字语法:
{% url 'p4_descriptor_update' id=projectid pk=form.instance.pk %}
可以在Django docs
中找到更多信息