У меня есть проект django, в котором значения базы данных необходимо регулярно обновлять самостоятельно. Там работает cronjob для обновления этих значений в базе данных, но для некоторых операций требуются атомные транзакции. Кто-нибудь знает, как сделать модельный метод полной транзакцией в django, не просматривая представления?
В идеале я хотел бы начать транзакцию в начале метода и зафиксировать его в конце, а затем просто иметь возможность вызвать этот метод из любого места (вид или cronjob) с гарантией что метод является атомарным.
Если вы знаете, как это сделать, мне также нужно знать, должен ли коммит сбой (из-за одновременной записи или чего-то еще), транзакция автоматически повторена или если мне придется вручную поймать исключение сбоя и повторный вызов метода.
Спасибо.