【发布时间】:2023-03-05 18:05:01
【问题描述】:
我是一个法国人,我正在研究 Django。我开始了,我有一个错误。
def setUp(self):
self.username = 'admin'
self.password = 'admin'
self.datetime = 'Tue, 15 Nov 1994 08:12:31 GMT'
self.temperature = '15.6'
self.presence = '56'
def test_presence_post(self):
#frame = 'presence=' + self.presence + '&datetime=2014-12-12 16:45:45'
c = Client()
c.login(username=self.username, password=self.password)
response = c.post('/datapresence', {'presence=' + self.presence + '&datetime=2014-12-12 16:45:45'},
content_type="application/x-www-form-urlencoded", HTTP_DATE=datetime)
self.assertEqual(response.status_code, 201)
我的错误:
self.assertEqual(response.status_code, 201)
断言错误:400 != 201
如果我使用 Advanced Rest Client,可以使用带有 url 和数据的 POST 请求。
非常感谢。
【问题讨论】:
-
您在哪里创建您尝试在测试数据库中进行身份验证的管理员用户?
-
400 暗示错误请求。您的数据似乎格式不正确。只需检查发送到
datapresence视图的帖子字典的格式 -
@GarryCairns 我的设置不在我创建用户的地方?
-
@karthikr 我的数据存在表单类 dataPresenceForm(forms.Form): datetime = forms.DateTimeField() presence = forms.IntegerField()
-
其实这样就好了。我要求你检查视图中的
request.POST字典
标签: python django assert http-status-code-400