Управление транзакциями Django

Помещать его простой: Как только Вы создаете неизменный объект, нет никакого способа изменить содержание того объекта. Примерами .NET неизменные объекты является String и Uri.

при изменении строки Вы просто получаете новую строку. Исходная строка не изменится. Uri имеет только свойства только для чтения и никакие методы, доступные для изменения содержания Uri.

Случаи, что неизменные объекты важны, являются различными, и в большинстве случаев имеют отношение к безопасности. Uri является хорошим примером здесь. (например, Вы не хотите, чтобы Uri был изменен некоторым недоверяемым кодом.) Это означает, что можно передать ссылку на неизменный объект вокруг, не имея необходимость волноваться, что содержание будет когда-либо изменяться.

Hope это помогает.

10
задан So8res 20 September 2009 в 12:56
поделиться

1 ответ

Вы смотрели Документы транзакций Django ? Особенно декоратор @ transaction.commit_on_success ( исходный код ). Он фиксирует транзакцию, если декорированная функция возвращается, не вызывая исключения. Если возникает исключение, выполняется откат.

15
ответ дан 3 December 2019 в 22:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: