如何在Django 2中从列表模板访问到细节模板?

时间:2018-09-18 14:15:41

标签: django django-templates python-3.6 django-2.0

我正在尝试从列表模板访问,以查看详细信息模板

例如:

文章:网址

article_patterns = [
  path('', HomePageView.as_view(), name='home')
  path('articles/', ArticleListView.as_view(), name="articles"),
  path('articles/<int:pk>/', ArticleDetailView.as_view(), name="article"),
]

主要网址

urlpatterns = [
  path('', include(article_patterns)),
  path('admin/', admin.site.urls),
]

article_list.html

<a href="{% url 'articles:article' article.id %}"> Detail {{articles.title}}</a>

但是我有这个错误:articles is not a registered namespace

有什么想法或建议吗?

1 个答案:

答案 0 :(得分:2)

您可以执行floydya所说的操作,而忽略名称空间。但是,如果要包含它,则应该在main.py中的include函数中添加一个namespace参数。

path('', include(article_patterns, namespace="articles"))

编辑:

如果要采用这种方法并使用namespace参数,则需要遵循rawken答案中给出的建议。也就是说,在您的文章应用中设置urls.py文件(如果有的话),然后包括urls模块,而不仅仅是视图列表。如果要查看所有选项,请参见source code的包含功能。

相关问题