Django postgress Integer Arrayfield не принимает массив
Я внезапно начал получать ошибку с полем целочисленного массива postgres в Django
Я получаю данные из внешнего API. Поле поступает в виде строки значений, разделенных запятыми.
В моем models.py у меня есть:
from django.contrib.postgres.fields import ArrayField
...
postcodes = ArrayField(models.IntegerField(null=True, blank=True), null=True)
Когда я обрабатываю данные, я пытаюсь очистить их с помощью этого метода, который должен удалять плохие данные и возвращать только список интов (я надеюсь...):
def postcodeExtractor(self,postcode_entry):
try:
postcodes = list(map(int, postcode_entry.split(','))) , # try covert to a list
except:
postcodes = []
return postcodes
Это работало в течение нескольких месяцев на моем тестовом сервере с тестовой копией живого сервера, но когда я начал вызывать реальный внешний API, я начал получать ошибки, подобные следующим при попытке сохранить новые записи, сохраняются только пустые записи:
Field 'postcodes' expected a number but got [2176, 2168, 2178, 2179, 2555, 2200, 2200, 2565].
Ошибка из стека непойманных исключений:
The above exception (int() argument must be a string, a bytes-like object or a real number, not 'list') was the direct cause of the following exception:
Я не могу увидеть, что изменилось между моим локальным и удаленным внешним API. в чем может быть проблема?