From f8a220d4243e53c9ce3a574813f026dc80f28fe2 Mon Sep 17 00:00:00 2001 From: iLLiCiTiT Date: Tue, 30 Mar 2021 16:24:11 +0200 Subject: [PATCH] settings are stored as dictionaries instead of json string --- pype/settings/handlers.py | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/pype/settings/handlers.py b/pype/settings/handlers.py index 6e93f2f4050..c801e9f17a1 100644 --- a/pype/settings/handlers.py +++ b/pype/settings/handlers.py @@ -320,10 +320,15 @@ def update_data(self, data): self.creation_time = datetime.datetime.now() def update_from_document(self, document): - value = "{}" + data = {} if document: - value = document.get("value") or value - self.data = json.loads(value) + if "data" in document: + data = document["data"] + elif "value" in document: + value = document["value"] + if value: + data = json.loads(value) + self.data = data def to_json_string(self): return json.dumps(self.data or {}) @@ -415,7 +420,7 @@ def save_studio_settings(self, data): }, { "type": SYSTEM_SETTINGS_KEY, - "value": self.system_settings_cache.to_json_string() + "data": self.system_settings_cache.data }, upsert=True ) @@ -550,7 +555,7 @@ def _save_project_data(self, project_name, doc_type, data_cache): } replace_data = { "type": doc_type, - "value": data_cache.to_json_string(), + "data": data_cache.data, "is_default": is_default } if not is_default: @@ -730,7 +735,7 @@ def save_local_settings(self, data): { "type": LOCAL_SETTING_KEY, "site_id": self.local_site_id, - "value": self.local_settings_cache.to_json_string() + "data": self.local_settings_cache.data }, upsert=True )