我对django的命名网址存在问题,其中包含include关键字。在我的主urls.py中我有url(r'^blog/$', include('blog.urls', namespace='blog'))
,在我的blog.urls中我有url(r'^(?P<slug>[-\w]+)/$', BlogDetailView.as_view(template_name='blog_detail.html'), name='blog_detail')
,我想在我的模型中使用该命名的url作为get_absolute_url()函数的返回语句。如果我输入
@models.permalink
def get_absolute_url(self):
return('blog_detail', (), {'slug':self.slug})
它不起作用...如果我删除inculde语句并将所有blog_detail网址放入我的网址,它就像一个魅力,我该怎么办才能解决?
感谢您的建议......
答案 0 :(得分:0)
您没有为命名空间添加前缀。请改用以下内容:
@models.permalink
def get_absolute_url(self):
return('blog:blog_detail', (), {'slug':self.slug})