From 8ad16ceb9caae25f984ec897fdeb4f3171955bc6 Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Sun, 25 Apr 2021 11:07:57 +1000 Subject: [PATCH] Refactorin' --- InvenTree/InvenTree/ready.py | 38 ++++++++++++++++++++++++------------ 1 file changed, 26 insertions(+), 12 deletions(-) diff --git a/InvenTree/InvenTree/ready.py b/InvenTree/InvenTree/ready.py index 7d4f2d4eb8..b03dc90bba 100644 --- a/InvenTree/InvenTree/ready.py +++ b/InvenTree/InvenTree/ready.py @@ -5,20 +5,34 @@ def canAppAccessDatabase(): Returns True if the apps.py file can access database records. There are some circumstances where we don't want the ready function in apps.py - to touch the database: - - - "flush" command - - "loaddata" command - - "migrate" command + to touch the database """ - if 'flush' in sys.argv: - return False - - if 'loaddata' in sys.argv: - return False + # If any of the following management commands are being executed, + # prevent custom "on load" code from running! + excluded_commands = [ + 'flush', + 'loaddata', + 'dumpdata', + 'makemirations', + 'migrate', + 'check', + 'dbbackup', + 'mediabackup', + 'dbrestore', + 'mediarestore', + 'shell', + 'createsuperuser', + 'wait_for_db', + 'prerender', + 'collectstatic', + 'makemessages', + 'compilemessages', + 'test', + ] - if 'migrate' in sys.argv: - return False + for cmd in excluded_commands: + if cmd in sys.argv: + return False return True