“Account”对象没有属性“get_absolute_url”

pyt*_*ngo 4 sitemap django

当尝试访问我的 sitemap.xml 时,我收到此错误:

'Account' object has no attribute 'get_absolute_url' on line 112.

109.    def get_absolute_url(self):
110.        if self.group is None:
111.            return reverse('wiki_article', args=(self.title,))
112.        return self.group.get_absolute_url() + 'wiki/' + self.title
Run Code Online (Sandbox Code Playgroud)

我在回溯中找不到这个“帐户”对象。我在这里导入东西失败了吗?如果您需要更多信息,请告诉我。

Jul*_*ins 5

您必须定义该方法。


获取绝对网址

Model.get_absolute_url()

定义 get_absolute_url() 方法来告诉 Django 如何计算对象的规范 URL。对于调用者来说,此方法应该返回一个可用于通过 HTTP 引用对象的字符串。

例如:

def get_absolute_url(self):
    return "/people/%i/" % self.id
Run Code Online (Sandbox Code Playgroud)

虽然此代码正确且简单,但它可能不是编写此类方法的最可移植的方式。verse() 函数通常是最好的方法。

例如:

def get_absolute_url(self):
    from django.core.urlresolvers import reverse
    return reverse('people.views.details', args=[str(self.id)])
Run Code Online (Sandbox Code Playgroud)

参考: https: //docs.djangoproject.com/en/1.9/ref/models/instances/