如何在django中设置request.body请求工厂发布请求?

Son*_*han 5 python django unit-testing

试图在python单元测试中设置request.body为

        self.factory = RequestFactory()
        self.request = self.factory.get(reverse('get_associations'))
        self.request.user = self.auth_user
        self.request.body = json.dumps(self.post_data)
Run Code Online (Sandbox Code Playgroud)

但它给出了错误:

self.request.body = json.dumps(self.post_data)
AttributeError: can't set attribute
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我解决这个问题吗?

Ale*_*all 11

根据这个答案,试试这个:

self.request = self.factory.get(reverse('get_associations'),
                                data=json.dumps(self.post_data),
                                content_type='application/json')
Run Code Online (Sandbox Code Playgroud)