我将django的会话密钥(request.session.session_key)存储在数据库列中-这是一个无需登录的应用程序,会话对于唯一用户而言已足够接受。它工作正常,除非我正在编写测试。
由于测试客户端保留了cookie,因此我认为会话ID在多个请求中都是稳定的。不过,看来这是不正确的。
例如,我希望在...
browser=Client()
browser.post(rating_url, {'term':'Helpful', 'action':'add'}, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
browser.post(rating_url, {'term':'Helpful', 'action':'remove'}, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
...视图将两次收到相同的会话密钥。但是,这种方式行不通。
如果有人可以提出解决方法,我将不胜感激。
最佳答案
对于简化单元测试中匿名会话的使用,存在功能要求。在此票证中,您可以找到hard
方式。这是链接-https://code.djangoproject.com/ticket/10899
关于python - 在django.test.client中保留 session ID,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8069613/