Django教程1期

时间:2015-03-10 22:02:05

标签: python django

我一直坚持这个问题3天,尝试不同的事情来解决问题,但没有用。它已经破坏了我的头,我希望有人能帮助我..

基本上我正在为Django做教程,在第1部分中,你打算从民意调查项目中的models.py文件中打印Question的输出。但是,尽管我修改了my,但我没有得到所需的输出根据教程编写代码。

这是polls项目中models.py文件的代码     导入日期时间 来自django.db导入模型 来自django.utils导入时区

 class Question(models.Model):
     question_text = models.CharField(max_length=200)
     pub_date = models.DateTimeField('date published')

 def __unicode__(self):
        return self.question_text
 def was_published_recently(self):
         return self.pub_date >= timezone.now() -datetime.timedelta(days=1)

class Choice(models.Model):
     question = models.ForeignKey(Question)
     choice_text = models.CharField(max_length=200)
     votes = models.IntegerField(default=0)

def __unicode__(self):
       return self.choice_text

从终端运行python shell时我应该接收的输出是

   [<Question: "what's up?">]

但是我收到了:

 [<Question: Question object>]

请帮忙!

1 个答案:

答案 0 :(得分:2)

修复代码的缩进,这些方法不属于您的类。

class Question(models.Model):
     question_text = models.CharField(max_length=200)
     pub_date = models.DateTimeField('date published')

     def __unicode__(self):
            return self.question_text

     def was_published_recently(self):
             return self.pub_date >= timezone.now() -datetime.timedelta(days=1)

class Choice(models.Model):
    question = models.ForeignKey(Question)
    choice_text = models.CharField(max_length=200)
    votes = models.IntegerField(default=0)

    def __unicode__(self):
           return self.choice_text