Невозможно создать базу данных с нуля после того, как вы поработали с командой squashmigrations в django

Я пытался выполнить команду squashmigrations в django, и через некоторое время мне потребовалось удалить db и начать с нуля (проблема также возникает при загрузке репозитория с GitHub и попытке воссоздать проект). При выполнении python manage.py makemigrations или python manage.py migrate

я получаю следующую ошибку

error:

Выкладываю models.py, который цитируется в последней строке лога:

meal_plan/models.py:

Я попытался сбросить миграции на оригинальном репозитории, используя эти инструкции how-to-reset-migrations безрезультатно

Может ли кто-нибудь помочь мне найти ошибку?

Спасибо большое

Просто удалите все папки миграции и выполните миграцию вручную, используя следующую команду:

python manage.py makemigrations appname

python manage.py sqlmigrate appname 0001

python manage.py migrate

И посмотрите, решит ли это вашу ошибку

Наконец-то нашел ошибку, вызывающую ошибку миграции. Дело не в команде squashmigrations, а в файле forms.py

class RecipeSimpleForm(forms.ModelForm):

...

RECIPES = [(x.id, x.title) for x in Recipe.objects.all()]

title = forms.ChoiceField(widget=forms.Select, choices=RECIPES)

class Meta:
    model = Recipe
    fields = ["title"]

Думаю, проблема в том, что я вызываю Recipe.objects.all() до того, как БД была создана.

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