From 0188737e74fa17b8bb344d65c7089f4cd61db922 Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Wed, 28 Nov 2018 00:35:05 -0400 Subject: [PATCH] Settings: Delay initialization of setting Delay the usage and initialization of Django settings by removing their reference from the "save_configuration" method declaration. Signed-off-by: Roberto Rosario --- mayan/apps/smart_settings/classes.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/mayan/apps/smart_settings/classes.py b/mayan/apps/smart_settings/classes.py index 16716d6431..639a0853e3 100644 --- a/mayan/apps/smart_settings/classes.py +++ b/mayan/apps/smart_settings/classes.py @@ -123,7 +123,10 @@ class Setting(object): return sorted(cls._registry.values(), key=lambda x: x.global_name) @classmethod - def save_configuration(cls, path=settings.CONFIGURATION_FILEPATH): + def save_configuration(cls, path=None): + if not path: + path = settings.CONFIGURATION_FILEPATH + try: with open(path, 'w') as file_object: file_object.write(cls.dump_data()) @@ -171,6 +174,7 @@ class Setting(object): ) else: self.raw_value = getattr(settings, self.global_name, self.default) + self.yaml = Setting.serialize_value(self.raw_value) self.loaded = True