本文整理汇总了Python中wtforms_json.flatten_json函数的典型用法代码示例。如果您正苦于以下问题:Python flatten_json函数的具体用法?Python flatten_json怎么用?Python flatten_json使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了flatten_json函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: test_sharing_class_property
def test_sharing_class_property(self):
""" When an unknown attribute has the same name as a property on
the Form class, the attribute is mistakenly seen as known because
getattr can retrieve the property, but when property.field_class
is accessed an error is raised. This tests that the error is not
raised when skip_unknown_keys is True.
"""
class MyForm(Form):
a = BooleanField()
flatten_json(MyForm, {'data': 13})
开发者ID:felix1m,项目名称:wtforms-json,代码行数:11,代码来源:test_json_decoder.py
示例2: test_sharing_class_property_without_skip_unknown_keys
def test_sharing_class_property_without_skip_unknown_keys(self):
""" When an unknown attribute has the same name as a property on
the Form class, the attribute is mistakenly seen as known because
getattr can retrieve the property, but when property.field_class
is accessed an error is raised. This tests that the error IS
raised when skip_unknown_keys is False.
"""
class MyForm(Form):
a = BooleanField()
with raises(InvalidData):
flatten_json(MyForm, {'data': 123}, skip_unknown_keys=False)
开发者ID:felix1m,项目名称:wtforms-json,代码行数:12,代码来源:test_json_decoder.py
示例3: test_flatten_nested_listfield_and_formfield_inheritance
def test_flatten_nested_listfield_and_formfield_inheritance(self):
class NestedForm(Form):
b = TextField()
class SpecialNestedField(FormField):
def __init__(self, *args, **kwargs):
super(SpecialNestedField, self).__init__(
NestedForm,
*args,
**kwargs
)
class SpecialField(FieldList):
def __init__(self, *args, **kwargs):
super(SpecialField, self).__init__(
SpecialNestedField(),
*args,
**kwargs
)
class MyForm(Form):
a = SpecialField()
assert flatten_json(MyForm, {'a': [{'b': 1}, {'b': 2}, {'b': 3}]}) == {
'a-0-b': 1,
'a-1-b': 2,
'a-2-b': 3
}
开发者ID:adamchainz,项目名称:wtforms-json,代码行数:28,代码来源:test_json_decoder.py
示例4: __init__
def __init__(self, formdata=_Auto, *args, **kwargs):
kwargs['csrf_enabled'] = False
if formdata is _Auto and self.is_submitted() and request.json:
formdata = flatten_json(self.__class__, request.json)
formdata = werkzeug.datastructures.MultiDict(formdata)
super(Form, self).__init__(formdata, *args, **kwargs)
开发者ID:nanlong,项目名称:flask_zeus,代码行数:8,代码来源:form.py
示例5: test_supports_dicts
def test_supports_dicts(self):
class MyForm(Form):
a = BooleanField()
b = IntegerField()
assert (
flatten_json(MyForm, {'a': False, 'b': 123}) ==
{'a': False, 'b': 123}
)
开发者ID:felix1m,项目名称:wtforms-json,代码行数:9,代码来源:test_json_decoder.py
示例6: test_supports_field_list_decoding
def test_supports_field_list_decoding(self):
class MyForm(Form):
a = FieldList(TextField())
assert flatten_json(MyForm, {'a': [1, 2, 3]}) == {
'a-0': 1,
'a-1': 2,
'a-2': 3
}
开发者ID:felix1m,项目名称:wtforms-json,代码行数:9,代码来源:test_json_decoder.py
示例7: test_supports_nested_dicts_and_lists
def test_supports_nested_dicts_and_lists(self):
class OtherForm(Form):
b = BooleanField()
class MyForm(Form):
a = FieldList(FormField(OtherForm))
data = {
'a': [{'b': True}]
}
assert flatten_json(MyForm, data) == {'a-0-b': True}
开发者ID:felix1m,项目名称:wtforms-json,代码行数:10,代码来源:test_json_decoder.py
示例8: test_flatten_dict
def test_flatten_dict(self):
class DeeplyNestedForm(Form):
c = TextField()
class NestedForm(Form):
b = FormField(DeeplyNestedForm)
class MyForm(Form):
a = FormField(NestedForm)
assert flatten_json(MyForm, {'a': {'b': {'c': 'd'}}}) == {
'a-b-c': 'd'
}
开发者ID:felix1m,项目名称:wtforms-json,代码行数:13,代码来源:test_json_decoder.py
示例9: test_flatten_formfield_inheritance
def test_flatten_formfield_inheritance(self):
class NestedForm(Form):
b = TextField()
class SpecialField(FormField):
def __init__(self, *args, **kwargs):
super(SpecialField, self).__init__(NestedForm, *args, **kwargs)
class MyForm(Form):
a = SpecialField()
assert flatten_json(MyForm, {'a': {'b': 'c'}}) == {
'a-b': 'c'
}
开发者ID:adamchainz,项目名称:wtforms-json,代码行数:14,代码来源:test_json_decoder.py
示例10: process
def process(self, request, container, fallback=None):
from wtforms_json import MultiDict, flatten_json
if inspect.isclass(container):
container = container()
if request.content_type == 'application/json':
request_data = MultiDict(flatten_json(container.__class__, parse_json(request.body)))
else:
request_data = request.params
container.process(formdata=request_data, obj=fallback, **container.data)
self.container = container
self.fallback = fallback
return self
开发者ID:PikaRules,项目名称:appengine-event-models,代码行数:17,代码来源:request_parsers.py
示例11: test_flatten_listfield_inheritance
def test_flatten_listfield_inheritance(self):
class SpecialField(FieldList):
def __init__(self, *args, **kwargs):
super(SpecialField, self).__init__(
TextField(),
*args,
**kwargs
)
class MyForm(Form):
a = SpecialField()
assert flatten_json(MyForm, {'a': [1, 2, 3]}) == {
'a-0': 1,
'a-1': 2,
'a-2': 3
}
开发者ID:adamchainz,项目名称:wtforms-json,代码行数:17,代码来源:test_json_decoder.py
示例12: test_only_flatten_on_form_field
def test_only_flatten_on_form_field(self):
class DictField(Field):
def process_formdata(self, valuelist):
if valuelist:
data = valuelist[0]
if isinstance(data, dict):
self.data = data
else:
raise 'Unsupported datatype'
else:
self.data = {}
class MyForm(Form):
a = IntegerField()
b = DictField()
assert (
flatten_json(MyForm, {'a': False, 'b': {'key': 'value'}}) ==
{'a': False, 'b': {'key': 'value'}}
)
开发者ID:felix1m,项目名称:wtforms-json,代码行数:20,代码来源:test_json_decoder.py
示例13: _add_entry
def _add_entry(self, formdata=None, data=unset_value, index=None):
'''
Fill the form with previous data if necessary to handle partial update
'''
if formdata:
prefix = '-'.join((self.name, str(index)))
basekey = '-'.join((prefix, '{0}'))
idkey = basekey.format('id')
if prefix in formdata:
formdata[idkey] = formdata.pop(prefix)
if hasattr(self.nested_model, 'id') and idkey in formdata:
id = self.nested_model.id.to_python(formdata[idkey])
data = get_by(self.initial_data, 'id', id)
initial = flatten_json(self.nested_form,
data.to_mongo(),
prefix)
for key, value in initial.items():
if key not in formdata:
formdata[key] = value
else:
data = None
return super(NestedModelList, self)._add_entry(formdata, data, index)
开发者ID:opendatateam,项目名称:udata,代码行数:24,代码来源:fields.py
示例14: test_unknown_attribute
def test_unknown_attribute(self):
class MyForm(Form):
a = BooleanField()
with raises(InvalidData):
flatten_json(MyForm, {'b': 123})
开发者ID:karloskar,项目名称:wtforms-json,代码行数:6,代码来源:test_json_decoder.py
示例15: test_raises_error_if_given_data_not_dict_like
def test_raises_error_if_given_data_not_dict_like(self):
with raises(InvalidData):
flatten_json([])
开发者ID:zatricion,项目名称:nuCAPTCHA,代码行数:3,代码来源:tests.py
示例16: test_supports_dicts
def test_supports_dicts(self):
assert flatten_json({'a': False, 'b': 123}) == {'a': False, 'b': 123}
开发者ID:appetito,项目名称:wtforms-json,代码行数:2,代码来源:tests.py
示例17: test_supports_select_multiple_field_decoding
def test_supports_select_multiple_field_decoding(self):
class MyForm(Form):
a = SelectMultipleField()
assert flatten_json(MyForm, {'a': [1, 2, 3]}) == {'a': [1, 2, 3]}
开发者ID:felix1m,项目名称:wtforms-json,代码行数:5,代码来源:test_json_decoder.py
示例18: test_supports_dicts_with_lists
def test_supports_dicts_with_lists(self):
assert flatten_json({'a': [1, 2, 3]}) == {'a-0': 1, 'a-1': 2, 'a-2': 3}
开发者ID:appetito,项目名称:wtforms-json,代码行数:2,代码来源:tests.py
示例19: test_supports_nested_dicts_and_lists
def test_supports_nested_dicts_and_lists(self):
data = {
'a': [{'b': True}]
}
assert flatten_json(data) == {'a-0-b': True}
开发者ID:appetito,项目名称:wtforms-json,代码行数:5,代码来源:tests.py
示例20: test_supports_empty_lists
def test_supports_empty_lists(self):
data = {
'a': []
}
assert flatten_json(data) == {}
开发者ID:appetito,项目名称:wtforms-json,代码行数:5,代码来源:tests.py
注:本文中的wtforms_json.flatten_json函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论