Gestion des transactions Django

J'ai un projet django dans lequel les valeurs de base de données doivent être mis à jour assez souvent sur leur propre. Il y a une tâche cron qui s'exécute à la mise à jour de ces valeurs dans la base de données, mais certaines opérations nécessitent des opérations atomiques. Quelqu'un sait comment faire un modèle de la méthode transaction complète dans django sans passer par l'intermédiaire de vues?

Idéalement, je voudrais être en mesure de démarrer une transaction au début d'une méthode et de s'engager à la fin, et alors seulement être en mesure d'appeler cette méthode à partir de n'importe où (à vue ou à un cronjob) avec la garantie que la méthode est atomique.

Si vous savez comment faire cela, j'ai aussi besoin de savoir si oui ou non, la validation échoue (en raison d'une écriture simultanés ou quelque chose), la transaction est automatiquement re-essayé, ou si je dois manuellement attraper une exception failure et re-appel de la méthode.

Merci.

source d'informationauteur So8res