Невозможно удалить элемент из массива django - PullRequest
0 голосов
/ 24 сентября 2018

Я пытаюсь удалить элемент из поля массива в модели заметок

obj=notes.objects.get(id=n_id,related_to__contains=[c_id])
obj.related_to.remove(c_id)
obj.save()

, где связано с полем массива

related_to=ArrayField(models.IntegerField()) 

n_id - идентификатор заметки, а c_id - идентификатор контакта.,Когда я пытаюсь сделать это, я получаю сообщение об ошибке ValueError: list.remove (x): x отсутствует в списке .Я проверил, и c_id находится в поле массива.Что не так?

1 Ответ

0 голосов
/ 24 сентября 2018

Поскольку он находит объект, c_id определенно находится в поле related_to.Я полагаю, что вы получаете эту ошибку, потому что c_id не тип int, а тип string.Сначала вы должны преобразовать его в int:

c_id = int(c_id)
obj=notes.objects.get(id=n_id,related_to__contains=[c_id])
....
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...