Django-ratings:'RatingField'对象没有'add'属性
我试着用这个应用的文档里给的例子。
他们的例子是:添加投票也很简单:
Ubicacion.rating.add(score=1, user=request.user, ip_address=request.META['REMOTE_ADDR'])
但是我得到了这个错误:
'RatingField' object has no attribute 'add'
我查看了这个应用的fields.py文件,确实有一个叫“add”的函数。
所以我不明白为什么当我创建这个类的对象时,它不识别这个类的属性?
这是我的模型:
class Ubicacion(models.Model):
route = models.LineStringField()
coordsdet = models.LineStringField()
fecha = models.DateTimeField(auto_now_add=True)
user = models.ForeignKey(User)
objects = models.GeoManager()
rating = RatingField(range=5)
1 个回答
1
我对 django-ratings
不是很熟悉,但看起来你应该在你的 Ubicacion
类的一个实例上调用 rating.add
,而不是直接在类上调用。
首先,创建一个实例:
myinstance = Ubicacion.objects.create(...)
然后,根据 django-ratings
的文档,你可以调用 add
:
myinstance.rating.add(score=1, user=request.user, ip_address=request.META['REMOTE_ADDR'])