Django尝试错误的网址模式,但我找不到我的错误。
urls.py
url(r'^message/(?P<advertisementid>(\d+))/$', chat_view, name="chat_view_with_toid"),
url(r'^profile/(?P<userid>(\d+))/$', profile_view, name="profile"),
url(r'^details/(?P<advertisementid>(\d+))/$', details_view, name='details'),
views.py
def details_view(request, advertisementid):
advertisement_data = Advertisement.objects.get(id=advertisementid)
return render(request, "details.html", {"advertisement_data": advertisement_data})
def profile_view(request, userid):
advertisements = Advertisement.objects.filter(user__id=userid)
return render(request, "profile.html", { 'advertisements': advertisements } )
details.html (从我要解析的位置到用户个人资料)
<a href="{% url 'profile' userid=advertisement_data.user.id %}" style="text-decoration:none;">
<input type="submit" class="details-btn-profile" value="Profile"></a>
<a href="{% url 'chat_view_with_toid' advertisementid=advertisement_data.id %}"
style="text-decoration:none">
<input type="submit" class="details-btn-contact" value="Kontakt"></a>
main.html中
<a href="{% url 'details' advertisementid=advertisement.id %}">
<img src="{% static advertisement.image.url %}" alt="Image"/></a>
当我点击按钮class="details-btn-profile"
时,Django给了我这个错误:
反转&#39;详细信息&#39;没有找到参数。尝试了1种模式:[&#39;详细信息/(?P(\ d +))/ $&#39;]
为什么要解析细节?有什么想法吗?
答案 0 :(得分:1)
当您点击发送表单的按钮时,操作错误可能是空的attr action
类似的内容:
<form action="">
你需要设置它:
<form action="{% url 'profile' userid=advertisement_data.user.id %}">
<!-- ^^^^^^^^^^^^^-->
或者如果您想通过点击只需更改type
<input type="button" class="details-btn-profile" value="Profile">
<!-- ^^^^^^^^^^-->
答案 1 :(得分:0)
网址名称chat_view_with_toid
似乎不存在于您的urls.py中。
答案 2 :(得分:0)
抱歉浪费你的时间,我发现了自己的错误。在profile.html上,我有这个HTML代码:
<a href="{% url 'details' %}" class="announce-hedline"><h3>BMW 320i Limousine</h3></a>
因为缺少需要解决的广告,所以"{% url 'details' %}"
无法解决。
我在错误的地方搜寻错误。
谢谢大家的帮助!