From b8fc167b32926e09d6d73eddc555343360f9c087 Mon Sep 17 00:00:00 2001 From: Claude Paroz Date: Sat, 24 May 2014 15:57:04 +0200 Subject: [PATCH] Fixed #22688 -- Documented ready() may be called more than once --- docs/ref/applications.txt | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/docs/ref/applications.txt b/docs/ref/applications.txt index 829e273aa96..fa69a284936 100644 --- a/docs/ref/applications.txt +++ b/docs/ref/applications.txt @@ -238,6 +238,15 @@ Methods separate from the production settings, ``manage.py test`` would still execute some queries against your **production** database! + .. note:: + + In the usual initialization process, the ``ready`` method is only called + once by Django. But in some corner cases, particularly in tests which + are fiddling with installed applications, ``ready`` might be called more + than once. In that case, either write idempotents methods, or put a flag + on your ``AppConfig`` classes to prevent re-running code which should + be executed exactly one time. + .. _namespace package: Namespace packages as apps (Python 3.3+)