Как обработать ошибку во время миграции после добавления нового внешнего ключа - PullRequest
0 голосов
/ 21 сентября 2019

Я изучаю Django в течение последних нескольких месяцев, и у меня возникла проблема с файлом makemigrations.

Например, в начале я добавил следующие модели:

class Booking(models.Model):
    alias = models.UUIDField(
        primary_key=True,
        default=uuid4,
        editable=False
    )
    seat = models.ForeignKey(Seats, on_delete=models.CASCADE)
    show = models.ForeignKey(Show, on_delete=models.CASCADE)

Также,я запускаю makemigrations и мигрирую, также добавляю некоторые данные ...

Но позже я обнаружил, что мне нужно добавить другое поле, поэтому я добавляю это поле:

booked_by = models.ForeignKey(Person, on_delete=models.CASCADE)

и, наконец, мои моделиниже:

class Booking(models.Model):
    alias = models.UUIDField(
        primary_key=True,
        default=uuid4,
        editable=False
    )
    seat = models.ForeignKey(Seats, on_delete=models.CASCADE)
    show = models.ForeignKey(Show, on_delete=models.CASCADE)
    booked_by = models.ForeignKey(Person, on_delete=models.CASCADE)

, а затем я успешно запускаю команду makemigrations, но когда я пытаюсь запустить команду python manage.py migrate: выдается ошибка, которая, как мне кажется, вы все знаете, какая ошибка.

но если я запускаю python manage.py migrate -fake Он работает успешно

Проблема в том, что когда я пытаюсь добавить что-то из шаблонов администратора, он не может добавить новые данные и выдает мне какую-то ужасную ошибку, и я думаю, вы знаете, что это заошибка тех.

Мне нужна ваша помощь, чтобы узнать, как вы справляетесь с такого рода ошибками?как это исправить?как добавить новый ключ foregin после запуска нескольких makemigrations ..

Может кто-нибудь помочь мне узнать это?

...