TypeError:'ImmutableMultiDict'对象是不可变的python

Mad*_*ing 2 python flask

嗨,我正在尝试添加新的键值对,但是收到TypeError错误 :'ImmutableMultiDict'对象是不可变的,我尝试添加新键的变量来自request.form,但我无法添加一个新的键值。关于如何实现这一点的任何想法?

这是我的控制器上的代码

@benefits_api.route("/templates", methods=["POST"])
def store():

    parameters = request.form
    response = BenefitTemplateService.create(parameters)

    return jsonify(response), response['code']
Run Code Online (Sandbox Code Playgroud)

我的服务就是这样

class BenefitTemplateService(object):

    @staticmethod
    def create(params):
        # some validation here

        params['credit_behavior'] = "none"
        return params
Run Code Online (Sandbox Code Playgroud)

但是我在credit_behavior的分配上遇到错误是错误消息

在此处输入图片说明

bgs*_*gse 5

您可以使用的内置to_dict()方法ImmutableMultiDict,这将为您提供可以自由修改的字典。

例如,您可以对代码进行以下更改:

@benefits_api.route("/templates", methods=["POST"])
def store():

    parameters = request.form.to_dict()
    response = BenefitTemplateService.create(parameters)

    return jsonify(response), response['code']
Run Code Online (Sandbox Code Playgroud)