• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python wtforms_json.flatten_json函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了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;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python wtforms_json.init函数代码示例发布时间:2022-05-26
下一篇:
Python wtforms_alchemy.model_form_factory函数代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap