Django获取查询

2024-06-02 06:18:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用纯python unittest编写一些测试代码。我是这样做的:

# retrieve the demo object to get the initial attributes
demo = DemoModel.objects.get(id='1')
init_name = demo.name
# use the requests module to send a request to change attributes of demo
requests.post(...)
# retrieve the demo object again to see if it's changed
demo = DemoModel.objects.get(id='1')
assertNotEqual(init_name, demo.name)

原来演示对象没有改变!我搜索和检查了很长时间,但是Djangoget查询中没有缓存,mysql也没有。你知道吗


Tags: thetonameidgetobjectsobjectinit
2条回答

你说过你是在“纯单元测试”中使用请求模块完成的。如果你不小心这样做,很可能你的请求失败,你没有检查你的职位的状态码。(例如,如果您不提供Django的CSRF值,它可能会失败,尽管它也可能因为权限检查而失败,等等)。你知道吗

你知道邮件是否成功返回吗?你知道吗

似乎不是Django而是Mysql事务问题。见How do I force Django to ignore any caches and reload data?

相关问题 更多 >