【问题标题】:request.data not always a queryDictrequest.data 并不总是一个 queryDict
【发布时间】:2020-03-24 09:31:20
【问题描述】:

RetrieveUpdateDestroyAPIView 上使用PATCH 请求,当我运行print(request.data) 时,我在RetrieveUpdateDestroyAPIView.update 中收到以下内容:

{'myVar': ''} 

当使用 django rest 框架的 APIClient 运行自动化测试时,我明白了:

<QueryDict: {'myVar': ['']}>

为什么会有所不同?我可以做些什么来确保我的测试环境和开发环境之间的一致性?

【问题讨论】:

    标签: django django-rest-framework django-tests


    【解决方案1】:

    我在测试中修补数据时必须添加格式类型,答案很简单:通过:

    response = self.client.patch(self.url, {'myVar': ''}, format='json') # added , format='json'
    

    注意format='json' 参数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-11-26
      • 2011-06-24
      • 2021-11-19
      • 1970-01-01
      • 2016-10-21
      • 2013-08-24
      • 2015-06-06
      • 2014-08-24
      相关资源
      最近更新 更多