aboutsummaryrefslogtreecommitdiffstats
path: root/lcm/pub/utils/values.py
diff options
context:
space:
mode:
Diffstat (limited to 'lcm/pub/utils/values.py')
-rw-r--r--lcm/pub/utils/values.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/lcm/pub/utils/values.py b/lcm/pub/utils/values.py
index fbb75f68..c2ce3c09 100644
--- a/lcm/pub/utils/values.py
+++ b/lcm/pub/utils/values.py
@@ -28,6 +28,15 @@ def ignore_case_get(args, key, def_val=""):
return def_val
+def remove_none_key(data, none_list=None):
+ none_list = none_list if none_list else [None, '', 'NULL', 'None', 'null', {}, '{}']
+ if isinstance(data, dict):
+ data = dict([(k, remove_none_key(v)) for k, v in data.iteritems() if v not in none_list])
+ if isinstance(data, list):
+ data = [remove_none_key(s) for s in data if s not in none_list]
+ return data
+
+
def update_value(origin_data, new_data):
logger.debug(origin_data)
if not isinstance(origin_data, dict):