Commit c26fae0d24b539ebe447a2120db1f7a89b04abef
1 parent
39cf3497
Simplify create_data_dict()
The type check of `path_to_value` was removed because there is already one in `set_to_object()`. The check for the value of the `value` argument was removed because it makes no sense, since `None` is a valid value too.
Showing
1 changed file
with
17 additions
and
12 deletions
@@ -474,18 +474,23 @@ def merge_dicts(a, b): | @@ -474,18 +474,23 @@ def merge_dicts(a, b): | ||
474 | 474 | ||
475 | 475 | ||
476 | def create_data_dict(path_to_value=None, value=None): | 476 | def create_data_dict(path_to_value=None, value=None): |
477 | - data_dict = munchify({'data': {}}) | ||
478 | - if isinstance(path_to_value, basestring) and value: | ||
479 | - list_items = re.search('\d+', path_to_value) | ||
480 | - if list_items: | ||
481 | - list_items = list_items.group(0) | ||
482 | - path_to_value = path_to_value.split('[' + list_items + ']') | ||
483 | - path_to_value.insert(1, '.' + list_items) | ||
484 | - set_to_object(data_dict, path_to_value[0], []) | ||
485 | - set_to_object(data_dict, ''.join(path_to_value[:2]), {}) | ||
486 | - set_to_object(data_dict, ''.join(path_to_value), value) | ||
487 | - else: | ||
488 | - data_dict = set_to_object(data_dict, path_to_value, value) | 477 | + """Create a dictionary with one key, 'data'. |
478 | + | ||
479 | + If `path_to_value` is not given, set the key's value | ||
480 | + to an empty dictionary. | ||
481 | + If `path_to_value` is given, set the key's value to `value`. | ||
482 | + In case it's the latter and if `value` is not set, | ||
483 | + the key's value is set to `None`. | ||
484 | + | ||
485 | + Please note that `path_to_value` is relative to the parent dictionary, | ||
486 | + thus, you may need to prepend `data.` to your path string. | ||
487 | + | ||
488 | + To better understand how `path_to_value` is handled, | ||
489 | + please refer to the `set_to_object()` function. | ||
490 | + """ | ||
491 | + data_dict = {'data': {}} | ||
492 | + if path_to_value: | ||
493 | + data_dict = set_to_object(data_dict, path_to_value, value) | ||
489 | return data_dict | 494 | return data_dict |
490 | 495 | ||
491 | 496 |
Please
register
or
login
to post a comment