Должно быть вызвано смешанным отступом табуляции / пробела ...
Ваш код, вставленный в комментарий, был испорчен, но я взглянул на исходный код HTML и обнаружил, что введенные вами строки (в частности, методы __unicode__
) имеют отступ с использованием смешанных табуляций / пробелов. Возможно, вы используете редактор, в котором вы установили «ширину табуляции» равной 4, чтобы уровень отступа табуляции выглядел так же, как 4 пробела. Однако интерпретатор python рассматривает эквивалент табуляции как 8 пробелов (два уровня отступа). Поэтому введенные вами строки (или строки с табуляцией) имеют неправильный отступ.
Здесь я отмечаю все вкладки в вашем коде как "<T>
"
from django.db import models
import datetime
class Poll(models.Model):
question = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
def was_published_today(self):
<T> return self.pub_date.date() ==datetime.date.today()
<T> def __unicode__(self):
<T> <T> return self.question
class Choice(models.Model):
poll = models.ForeignKey(Poll)
choice = models.CharField(max_length=200)
votes = models.IntegerField()
def __unicode__(self):
<T> <T> return self.choice
НИКОГДА не смешивайте пробелы и символы на любом языке. И в Python мы всегда используем 4 пробела для отступа, как рекомендовано PEP-8 .
Какой бы редактор вы ни использовали, Google для того, чтобы сконфигурировать его для автоматического расширения вкладок на 4 пробела.