即使我的pk值正确,也获取NoReverseMatch

时间:2019-01-06 15:00:00

标签: python django

即使我尝试传递的内容具有主键,我也会收到NoReverseMath错误。我已经测试过仅显示主键,它是正确的键,但是当我尝试在url中使用它时,它说没有主键。

{% url 'thread_page' pk=notif.content_object.ancestor.pk %}

这是我正在使用的行。当我使用

{{notif.content_object.ancestor.pk}}

它将显示主键,所以我不确定这是怎么回事。

Template error:
In template /Users/winglee/Documents/Learning 
Python/jellyfish/jellyfish/forum/templates/forum/base.html, error at 
line 39    
Reverse for 'thread_page' with keyword arguments '{'pk': ''}' not 
found. 2 pattern(s) tried: ['thread/(?P<pk>[^/]+)/$', 'thread/(? 
P<pk>[^/]+)/$']
29 :                 <a class="navbar-item">Documentation</a>
30 :                 <div class="navbar-end">
31 :                     <div class="buttons">
32 :                         {% if user.is_authenticated %}
33 :                             <p class="blurb">Welcome, <a href=" 
{% url 'profile_page' pk=user.pk %}">{{user.username}}</a></p>
34 :                             <a id="notif" class="button"> 
{{unread.count}} &nbsp<i class="fas fa-bell"></i></a>
35 :                             <div id="notiftray" 
class="inactive">
36 :                                 {% for notif in notifs %}
37 :                                 <div class="card u-padding">
38 :                                     {% if 
notif.content_type.model == 'post' %}
39 :                                         <a href="{% url 
'profile_page' pk=notif.actor.pk %}">{{notif.actor}}</a> posted a 
reply in <a href=" {% url 'thread_page' 
pk=notif.content_object.ancestor.pk %} "> 
{{notif.content_object.ancestor}}</a>
40 :                                     {% elif 
notif.content_type.model == 'likedislike' %}
41 :                                         <a href="{% url 
'profile_page' pk=notif.actor.pk %}">{{notif.actor}}</a>
42 :                                     {% elif 
notif.content_type.model == 'profilepost' %}
43 :                                         <a href="{% url 
'profile_page' pk=notif.actor.pk %}">{{notif.actor}}</a>
44 :                                     {% endif %}
45 :                                 </div>
46 :                                 {% empty %}
47 :                                 No notifications
48 :                                 {% endfor %}
49 :                             </div>

0 个答案:

没有答案