dic2str: doc
This commit is contained in:
@@ -1,51 +1,59 @@
|
||||
#!/usr/bin/python
|
||||
|
||||
|
||||
DOCUMENTATION = r"""
|
||||
name: dict2str
|
||||
short_description: This filter transforms a flat dict into a string using 4 separators.
|
||||
version_added: "0.1.1"
|
||||
author: Sébastien Namèche (@seb4itik)
|
||||
description:
|
||||
- If my_dict is {one: "un", two: "deux", three: "trois"}, then:
|
||||
- {{ my_dict | dict2str(sep1=' is ', sep2=', ', sep3='.') }}
|
||||
- will produce:
|
||||
- "one is un, two is deux, three is trois."
|
||||
options:
|
||||
_input:
|
||||
description: A flat dict.
|
||||
type: dict
|
||||
elements: str, int, bool
|
||||
required: true
|
||||
sep0:
|
||||
description: Unique initial separator at the beginning of string.
|
||||
type: str
|
||||
default: ""
|
||||
sep1:
|
||||
description: Separator between each key and value pairs of the dict.
|
||||
type: str
|
||||
default: "="
|
||||
sep2:
|
||||
description: Separator between key/value pairs of the dict that has been combined with sep1.
|
||||
type: str
|
||||
default: ";"
|
||||
sep3:
|
||||
description: Unique final separator at the end of string.
|
||||
type: str
|
||||
default: ""
|
||||
notes:
|
||||
- If a value associated to a key of the dict is None or an empty string,
|
||||
- sep2 will not be used.
|
||||
"""
|
||||
|
||||
|
||||
RETURN = r"""
|
||||
_value:
|
||||
type: str
|
||||
description:
|
||||
- String representating the dict using provided separators.
|
||||
"""
|
||||
|
||||
|
||||
class FilterModule(object):
|
||||
def filters(self):
|
||||
return {
|
||||
'dict2str': self.dict2str
|
||||
}
|
||||
|
||||
def dict2str(self, d, sep1='=', sep2=';', sep3=''):
|
||||
return sep2.join(
|
||||
def dict2str(self, d, sep0='', sep1='=', sep2=';', sep3=''):
|
||||
return sep0 + sep2.join(
|
||||
[ str(k) + (sep1+str(v) if v!=None and v!='' else '') for k, v in d.items() ]
|
||||
) + sep3
|
||||
|
||||
|
||||
DOCUMENTATION = """
|
||||
name: dict2str
|
||||
author: Sébastien Namèche (@seb4itik)
|
||||
version_added: "0.1.1"
|
||||
short_description: This filter transforms a flat dict into a string using 3 separators.
|
||||
description:
|
||||
- If my_dict is {one: "un", two: "deux", three: "trois"}, then:
|
||||
- {{ my_dict | dict2str(sep1=' is ', sep2=', ', sep3='.') }}
|
||||
- will produce:
|
||||
- "one is un, two is deux, three is trois."
|
||||
options:
|
||||
sep1:
|
||||
description:
|
||||
- separator between each key and value pairs of the dict
|
||||
type: str
|
||||
default: "="
|
||||
sep2:
|
||||
description:
|
||||
- separator between key/value pairs of the dict that has been combined with sep1
|
||||
type: str
|
||||
default: ";"
|
||||
sep3:
|
||||
description:
|
||||
- unique final separator at the end of string
|
||||
type: str
|
||||
default: ""
|
||||
notes:
|
||||
- If a value associated to a key of the dict is None or an empty string,
|
||||
- sep2 will not be used.
|
||||
"""
|
||||
|
||||
RETURN = """
|
||||
data:
|
||||
type: str
|
||||
description:
|
||||
- String representating the dict using provided separators.
|
||||
"""
|
||||
Reference in New Issue
Block a user