Почему я получаю IntegrityError при нулевом значении в несуществующем столбце... Django

Я пытаюсь обратиться к внешнему api, когда пользователь отправляет форму. Я использую Django и Postgresql

Моя модель

class League_Mod(models.Model):
    host = models.CharField(max_length=50)
    Espn_League_Id = models.IntegerField(unique = True)
    Espn_S2 = models.CharField(max_length=3000)
    Espn_Swid = models.CharField(max_length=300) 
    bigdata = models.JSONField(default=dict,null=True)

Мой сериализатор

    class Meta:
        model = League_Mod
        fields = ['host', 'Espn_League_Id','Espn_S2','Espn_Swid','bigdata']

Виды

где Owners - большой словарь.

league_data = {
            'host' : request.data['host'],
            'Espn_League_Id' :request.data['Espn_League_Id'],
            'Espn_S2' : request.data['Espn_S2'],
            'Espn_Swid' : request.data['Espn_Swid'],
            'bigdata' : Owners
  }
serializer = LeagueSerializer(data=league_data)
print(serializer)
if serializer.is_valid(raise_exception=True):
    serializer.save()
    return  Response(serializer.data)

мой сериализатор печати работает и печатает данные правильно.

Но я получаю ошибку:

integrityError at /wel/
null value in column "hello" of relation "api_league_mod" violates not-null constraint
DETAIL:  Failing row contains (11, JPFL, 216415, AEAylLD7uSQQ7%2BenPr6av1H%2Fx0Hqbbpn8Jvr91ngxM1ll5ynO685mhN%2BSu..., {D19D67CA-C981-4CA2-8463-AF4111D2E8E2}, {"Person1": {"2010": [0, 1, 2, 2, 2, 3, 3, 3, 3, 4, 5, 5, 6,..., null).

Мне очень непонятно, где находится колонка hello... и нет никакой связи с api_league_mod Model, поэтому не совсем понятно, почему мой сериализатор возвращает unvalid

Любое понимание будет оценено по достоинству. Спасибо!

Столбец hello, вероятно, присутствует в базе данных, что означает, что он был в вашей модели League_Mod и был удален позже. Однако это удаление не отражено ни в одной из ваших миграций.

Вы можете попробовать запустить manage.py makemigrations и проверить вывод, это может создать операцию удаления для поля hello.

Затем выполните manage.py migrate для применения изменений к БД

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