Первичная миграция существующего приложения на Django

У меня есть приложение, в котором все работает на локальной dev-машине, и я пытаюсь установить его на другой dev-машине со свежей БД (Postgres).

Я не смог запустить миграции из-за ошибки cannot find field, поэтому я удалил все миграции и попытался сделать их снова, но та же ошибка.

django.db.utils.ProgrammingError: relation "questionnaire_projectquestionanswerchoice" does not exist
LINE 1: ...rojectquestionanswerchoice"."id") AS "count" FROM "questionn...

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

Есть ли официальный способ справиться с этим?

class ProjectQuestionMostUsedAnswerChoiceViewset(viewsets.ModelViewSet):
    # dupes = (
    #     models.ProjectQuestionAnswerChoice.objects.values("name")
    #     .annotate(count=Count("id"))
    #     .order_by("-count")
    #     .filter(count__gt=0)[:10]
    # )

    # queryset = (
    #     models.ProjectQuestionAnswerChoice.objects.filter(
    #         name__in=[item["name"] for item in dupes]
    #     )
    #     .distinct("name")
    #     .order_by("name")
    # )
    queryset = models.ProjectQuestionAnswerChoice.objects.all()
    serializer_class = serializers.ProjectQuestionAnswerChoiceSerializer
    filter_backends = (
        filters.QueryParameterValidationFilter,
        django_filters.DjangoFilterBackend,
    )
    filterset_fields = {
        "id": ("exact",),
    }
Вернуться на верх