我试图从django网站上做django教程,我遇到了一个问题:我必须将我的__unicode__
方法添加到我的模型类中,但是当我尝试返回对象时该模型我得到以下错误:
in __unicode__
return self.question()
TypeError: 'unicode' object is not callable
我对蟒蛇来说相当新,对django来说很新,我真的不知道我在这里错过了什么,如果有人能指出它,我会非常感激。一点代码:
我的models.py:
# The code is straightforward. Each model is represented by a class that subclasses django.db.models.Model. Each model has a number of
# class variables, each of which represents a database field in the model.
from django.db import models
class Poll(models.Model):
question = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
def __unicode__(self):
return self.question
class Choice(models.Model):
poll = models.ForeignKey(Poll)
choice = models.CharField(max_length=200)
votes = models.IntegerField()
def __unicode__(self):
return self.choice()
并在交互式shell中:
from pysite.polls.models import Poll, Choice
Poll.objects.all()
答案 0 :(得分:29)
self.choice
是一个字符串值,但代码试图像函数一样调用它。只需删除之后的()
。