gpt4 book ai didi

python - 使用字典作为 RequestParser 验证参数

转载 作者:行者123 更新时间:2023-12-01 07:02:00 24 4
gpt4 key购买 nike

我想知道是否有办法将字典传递给 RequestParser .add_argument() 命令的参数

它通常是这样工作的

    my_parser = reqparse.RequestParser()
my_parser.add_argument('my_field', type=dict, help='my_field must be a dict', required=True)

出于代码可重用性的目的,我想像这样使用它

    my_arguments = {type=dict, help='my_field must be a dict', required=True}

然后使用以下方法将它们作为参数传递给 .add_argument 函数:

    my_parser.add_argument('my_field', my_arguments)

我在尝试使用列表理解来做到这一点时遇到了困难,

    my_parser.add_arguments('my_field', list(key=value for (key, value) in parser_arguments.items()))

此时我意识到我可能无法使用字典,可能需要执行 getattr() 并且显然在这方面投入了太多时间。对我来说这似乎是可能的和优雅的,但无论如何我找不到解决方案,感谢对此有任何启发性的想法。

编辑:我无法使用直觉

    my_parser.add_argument('my_field', my_arguments)

因为字典将被添加到解析器参数的“默认”字段,而实际字段(“type”、“help”和“required”)不受影响。

最佳答案

You can use kwargs unpacking :

my_arguments = {'type':dict, 'help':'my_field must be a dict', 'required':True}
my_parser.add_argument('my_field', **my_dict)

这相当于

my_parser.add_argument('my_field', type=dict, help='my_field must be a dict', required=True)

关于python - 使用字典作为 RequestParser 验证参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58592807/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com