Я ломаю голову, пытаясь понять, почему значение по умолчанию требуется для некоторых, но не для всех полей. Например, в документации сказано, что models.CharField()
имеет только один обязательный параметр, который max_length
, но python manage.py makemigration
возвращает ошибку, если значение по умолчанию не указано. И у меня та же ошибка для некоторых из моих models.ForeignKey()
полей. Не могли бы вы объяснить, почему и когда следует указывать значение по умолчанию?
models.py
class Algo(models.Model):
strategy = models.ManyToManyField(Strategy, related_name='strategy')
name = models.CharField(max_length=12) # <-- Return an error !?
class Meta:
verbose_name_plural = "algos"
def __str__(self):
return self.name