Django: как найти, какое ограничение CHECK не сработало

Я использую django 3. База данных sqlite. У меня возникла ситуация, когда экземпляр одной из моих моделей не сохраняется. Я получаю ошибку целостности и "CHECK constraint failed", за которой следует имя моей модели ("post" в моем приложении "press": press_post). Я посмотрел, что это значит, что значение для одного из моих полей невозможно? Если кто-то может объяснить, что это значит, более точно и точно, это было бы полезно. В основном, я хочу знать, как выяснить, какое проверочное ограничение не сработало, чтобы я мог его исправить (какое поле или какой фрагмент данных в модели вызывает проблему). Другие экземпляры в модели сохраняются без проблем, а несколько других имеют ту же проблему, что и этот экземпляр.

.

Я могу получить доступ к экземпляру в shell_plus и просмотреть данные. Все выглядит нормально... но, очевидно, я что-то упускаю.

вывод ошибки:

Спасибо за помощь. Проблема была в том, что в моей пользовательской функции сохранения, при оценке одного из условий, я присвоил значение np.nan ключу в словаре, который затем был присвоен одному из полей jsonfield моей модели. очевидно, это не правильно. Я полагаю, что jsonfields не может сериализовать np.nan. Я не уверен, что с этим делать в долгосрочной перспективе, но замена их на текст 'NaN' сработала. Причина, по которой большинство экземпляров не имели проблем, заключается в том, что большинство не возвращали значения nan.

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