AttributeError:' WSGIRequest'对象没有属性' status_code'

时间:2018-03-28 06:20:03

标签: python django

我收到了一个错误,即AttributeError:' WSGIRequest'对象没有属性' status_code'。我写了测试代码,

def test_user(self):
    obj =     {
                "username": "tom",
                "email": "tom@gmail.com",
                "password": ""
    }

    factory = APIRequestFactory()
    response = factory.post('http://127.0.0.1:8000/polls/data/', obj)
    self.assertEquals(response.status_code, 400)

但是当我运行这段代码时,错误就发生了。我跟着这个网站http://www.django-rest-framework.org/api-guide/testing/写了测试代码,我想为什么会发生这个错误。当然,响应的类型与我理想的不同,但我该怎么办?我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

factory.post('http://127.0.0.1:8000/polls/data/', obj)返回request个实例。您需要将其传递给视图以测试您的视图方法:

request = factory.post('http://127.0.0.1:8000/polls/data/', obj)
response = your_view(request)

参见示例here