我最近在我的模型“新闻”中添加了一个新的方法:
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())
slug()
函数的代码? - Timmy O'Mahony.pyc
文件:find . -name "*.pyc" -exec rm -r {} \;
(或手动删除News
模型的models.pyc
文件)。 - Timmy O'Mahony