我试图在一个模板中构造一个包含两个变量的URL,但得到的却是相同的错误消息。 我刚到Django,所以我需要你的帮助:)
Exception Type: NoReverseMatch
Exception Value: Reverse for 'skill_update' with arguments '()' and keyword
arguments '{u'instancepk': 1, u'skillpk': 15}' not found. 1 pattern(s)
tried: [u'persomaker/skill/update/(?P<skillpk>[0-9]+)$/(?P<instancepk>[0-9]+)$']
模板:
{% url 'persomaker:skill_update' skillpk=item.pk instancepk=instance.pk %}
你知道吗视图.py地址:
def skill_update(request,skillpk,instancepk):
form = SkillCreateForm(request.POST)
user = User.objects.get (id = request.user.id)
instance = Character.objects.get (id = instancepk)
if form.is_valid():
form.save()
return redirect('persomaker:skill_list', instance.id)
else:
skill = Skill.objects.get(id=pk)
form = SkillCreateForm(initial={'character':instance})
form.fields['skill'].widget = HiddenInput()
form.fields['level'].queryset = range(0,7)
form.fields['character'].widget = HiddenInput()
return render(request, 'character/create_skill.html',
{'instance':instance,
'form': form,})
你知道吗网址.py地址:
url(r'^skill/update/(?P<skillpk>[0-9]+)$/(?P<instancepk>[0-9]+)$',
views.skill_update, name='skill_update'),
URL配置中有2
$
。这不是一个有效的正则表达式,因为它假定一个换行符。你知道吗在模式regex的中间有一个
$
。这是终止字符;之后的任何字符都不会匹配。除去中间的那个。你知道吗相关问题 更多 >
编程相关推荐