Ошибка от Django 1 до Django 2 on_delete - PullRequest
0 голосов
/ 09 июня 2018

Я считаю, что этот рабочий процесс был создан для предыдущей версии Django.Теперь, когда я пытаюсь обновить его, я получаю ошибку, чтобы добавить on_delete.Вот что я сделал, но это все еще не работает, и мне интересно, что я делаю неправильно.

ОРИГИНАЛ

class Task(AbstractEntity):
    request = ForeignKey(Request, related_name='tasks')   
    assignee = ForeignKey(Group)    
    updated_by = ForeignKey(User)    
    activity_ref = CharField(max_length=100)    
    status = CharField(verbose_name="Status", max_length=30, choices=TASK_STATUS)

МОЯ ВЕРСИЯ

class Task(models.AbstractEntity):
    request = models.ForeignKey(Request, related_name='tasks', on_delete=models.CASCADE)
    assignee = ForeignKey(Group)
    updated_by = ForeignKey(User)
    activity_ref = CharField(max_length=100)
    status = CharField(verbose_name="Status", max_length=30, choices=TASK_STATUS)

Тогда я получаю еще одну ошибку, говоря, что модель не определена.

1 Ответ

0 голосов
/ 09 июня 2018

Согласно документам Django 2.0 (а также примечания к выпуску ) все поля Foreignkey теперь имеют обязательный параметр on_delete.

Кажетсябыть пропущенным на полях вашей модели.Примечания к выпуску также советуют взглянуть на ваши миграции:

Аргумент on_delete для ForeignKey и OneToOneField теперь требуется в моделях и миграциях.Подумайте о сокращении миграций, чтобы их было меньше для обновления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...