django что произойдет, если я увеличу_обновление значений, которые не были изменены?

#django #django-models

#django #django-модели

Вопрос:

Итак, у меня есть такая функция, которая массово обновляет много-много полей для parent_object заданными данными. Проблема в том, что не каждый объект, указанный в data параметре, изменит свою позицию. Итак, что произойдет, если я скажу django увеличить_обновление значений, позиции которых еще не изменены? Будут ли возникать какие-либо исключения? Например, пусть список объектов во многих-многих полях будет:

 [id=1'blue', id=2'green', id=3'yellow']
 

Если я скажу django обновить эти значения, например

 [id=1 update to 'blue', id=2 update to 'purple', id=3 update to 'magenta']
 

Здесь id = 1 снова обновляется до неизменного значения, синего цвета.
будут ли возникать какие-либо ошибки?

     def overwrite_object_positions(self, data: list, parent_object):
        """
        Overwrites object-positions, enclosed
        within a transaction. Rolls-back if any error arises.
        """
        transaction.set_autocommit(False)
        try:
            self.get_overwrite_objects(parent_object).bulk_update(data, ['position'])
        except Exception as err:
            transaction.rollback()
            raise ValueError(err)
        else:
            transaction.commit()
        finally:
            transaction.set_autocommit(True)
 

Комментарии:

1. Как вы думаете, почему изменение значения с одного на другое должно приводить к ошибке

2. нет, я имел в виду изменение значения на то же самое

3. например, массовое обновление объектов с помощью списка, где список содержит частично неизмененные объекты. надеюсь, вы поняли, что я значил1