我有这个代码:
object_id = request.POST.get('id')
try:
object = request.user.object_set.get(id=object_id, flag=False)
except Object.DoesNotExist:
object = None
我想如果object_id == None
,我会一直得到object == None
。但不是!什么时候object_id
没有我object
从数据库中得到一些!我使用远程调试并检查了第一次评估时request.user.object_set.get(id=object_id, flag=False)
我得到了 Object 实例,第二次评估这段代码时我得到了 DoesNotExist 异常。
我重写了这段代码来明确检查object_id
,然后才要求 DB 获取对象。我只是好奇-为什么会发生这种情况?一些缓存问题?还要注意 - 它在本地机器(Windows 7)上按预期工作,它不仅在服务器(CentOS)上工作,而且在相同版本的 Python/Django 上工作。