我不知道这一点。我尝试了不同的尝试,但没有成功。注释掉urls.py中的app_name可以使我完美地进入页面。关于app_name我应该知道些什么? 有任何想法吗? views.py附件如下。任何帮助表示赞赏。谢谢!
#models.py
class Testimony(models.Model):
title = models.CharField(max_length=100)
def get_absolute_url(self):
return reverse("Testimony:details", kwargs={"id": self.id} )
#urls.py
app_name='Testimony'
urlpatterns=[
path('testimonypost/', views.TestimonyOrderView, name='testimonypost'),]
#template(traceback points to this line)
<li><a href="{% url 'testimonypost'%}" class="glyphicon glyphicon-grain"> Testimonies</a></li>
#views.py
def TestimonyOrderView(request):
queryset_list=Testimony.objects.annotate().order_by('timestamp')
paginator = Paginator(queryset_list, 20)
page_request_var="page"
page=request.GET.get(page_request_var)
try:
queryset=paginator.page(page)
except PageNotAnInteger:
queryset=paginator.page(1)
except EmptyPage:
queryset=paginator.page(paginator_num.pages)
return render(request, 'testimony_post.html', {'queryset_list':queryset_list})
答案 0 :(得分:1)
模板中的url部分错误。它必须是:{% url 'Testimony:testimonypost' %}
使用名称空间后,必须在URL中使用应用程序名称。
查看此内容:https://docs.djangoproject.com/en/2.1/topics/http/urls/#reversing-namespaced-urls