Django создание миграций

Рассмотрим следующие три класса:

class UUIDModel(models.Model):

    id = models.UUIDField(primary_key=True, editable=False, default=uuid.uuid4)

    class Meta:
        abstract = True


class TimeStampedUUIDModel(UUIDModel):

    created = models.DateTimeField(auto_now_add=True, editable=False)
    modified = models.DateTimeField(auto_now=True, editable=False)

    class Meta:
        abstract = True

class UsefulClass(TimeStampedUUIDModel):

    name = models.CharField(max_length=150, unique=True)
    creator = models.ForeignKey('OtherClass', on_delete=models.SET_NULL, null=True)

На основе этих классов, когда я выполняю команду makemigrations, Django создаст две миграции (при первом же запуске). Одна содержит поля id, created, modified и name (!), а вторая добавляет внешний ключ creator.

Какова может быть причина создания двух миграций вместо одной?

@PrabinSapal прав, вы можете сбросить свою базу данных, используя команду python manage.py reset_db --noinput. Django команда, которая сбрасывает вашу Django базу данных , удаляя все данные из всех таблиц . Это позволит вам запустить все миграции снова.

Вернуться на верх