使用django页面cms时,我在django模板中遇到get_absolute_url问题。 它返回一个空字符串,但不链接到我所需的页面。
我有以下模型,网址模板和视图
模型
class Body(models.Model):
...
url = models.SlugField(unique=True, help_text='---')
网址
(r'^news/', include('news.urls_news')),......
url(r'^/(?P<url>[\w\-]+)/$', 'news_view', name='news_view'),
查看
def news_view(request, url):
new = get_object_or_404(Body, url=url)
return render_to_response('news/view.html', {
'news': news
}, context_instance=RequestContext(request))
模板
<li><a href="{{ news.get_absolute_url }}">{{ news.title }}</a></li>
我的模板中的以下代码返回我想要的字符串,但这样做直接指向我的html页面
<li><a href="{{ news.url }}">{{ news.title }}</a></li>
我知道我的所有内容都链接到正确的文件,因为我有其他视图可以正常工作。有人可以指出我正确的方向,为什么get_absolute_url不能正常工作,以及为什么{{news.url}}没有指向正确的页面。我确信这与我的urls.py有关,但我不确定。 请忍受我,我是django的新手。非常感谢所有帮助。
答案 0 :(得分:1)
您是否确实在新闻模型中定义了get_absolute_url
方法?你没有表现出来。