我最近在我的模型“News”中添加了一个新方法:
def slug(self):
return slugify(self.title)
但是我似乎无法从任何地方调用它。想象一下,我有一个名为 n 的 News 对象。尝试打电话时
n.slug()
我总是收到如下错误:
AttributeError: 'News' object has no attribute 'slug'
我是 Django 和 Python 的初学者,我确信这只是我的一个愚蠢的错误。顺便说一句,我在添加方法后尝试重新启动开发服务器并同步数据库,两者都没有改变。请注意,我以前使用过这样的模型方法没有问题:S
编辑:
这是模型:
from django.template.defaultfilters import slugify
class News(models.Model):
title = models.CharField(max_length=100)
[...]
def slug(self):
return slugify(self.title)
这是一些关于我如何调用该方法的示例代码。我首先尝试在模板中调用它,但它不起作用。然后我改变了我的看法,所以它只返回 slug,但错误仍然存在。当我在shell中尝试时也是如此。
from fbki.models import News
def news_detail(request, slug, news_id):
news = News.objects.get(id = news_id)
return HttpResponse(news.slug())