This QueryDict instance is immutable

查阅官方文档,发现QueryDict实例变成一个不可修改。

官方文档解释:

在正常的请求/响应周期中访问时,QueryDicts request.POST和request.GET将是不可变的。要获得可变版本,您需要使用QueryDict.copy()。

解决办法:

方法1:

  data=request.POST.copy()

   django rest

  data=request.data.copy()

方法2:

    data=request.POST
    # 记住旧的方式
    _mutable = data._mutable
    # 设置_mutable为True
    data._mutable = True
    # 改变你想改变的数据
    do something;做我们想要做的事
    data['name']='chenxinming'
    # 恢复_mutable原来的属性
    data._mutable = _mutable

猜你喜欢

转载自blog.csdn.net/weixin_37989267/article/details/85328079