Я нашел решение своей проблемы.
Я создал триггер PostgreSQL для предотвращения обновления нескольких столбцов.Со стороны базы данных я проверил это и работает совершенно нормально.Проблема была со стороной Django.
В базе данных один столбец можно обновить, введя значение, он не связан с другими столбцами, поэтому нет ошибок при обновлении конкретного столбца.Например, в строке есть два поля: одно модифицируемое, а другое предотвращается с помощью триггера, поэтому, когда я изменяю это модифицируемое поле, оно будет изменено.
Проблема с Django, в Django всегда пишетсяВесь объектНапример, если у вас есть объект с двумя полями, одно из которых можно изменить, а другое нет, но оба сопоставлены в Django, при сохранении этого объекта Django обновит оба поля, даже если только одно или ни одно из них не изменилось.
Поскольку Django обновляет все поля, даже если было изменено только одно поле, триггер вызывался.
, поэтому мне пришлось искать опцию, которая позволит обновлять только указанные поляили только измененные / измененные поля, а не другие неизмененные поля.
Я нашел это update_fields ,
update_fields помогает мне определить, какие поля должны быть обновлены вместо обновления всей строки или всех полей.