我最终将项目发布到生产级别,突然之间,我遇到了一些在开发阶段从未解决的问题。
当用户发布一些操作时,有时会出现以下错误。
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 111, in get_response
response = callback(request, *callback_args, **callback_kwargs)
File "home/ubuntu/server/opineer/comments/views.py", line 103, in comment_expand
comment = Comment.objects.get(pk=comment_id)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/manager.py", line 131, in get
return self.get_query_set().get(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py", line 366, in get
% self.model._meta.object_name)
DoesNotExist: Comment matching query does not exist
真正令我沮丧的是,该项目在本地环境中运行良好,此外,数据库中还存在匹配的查询对象DOES。
现在,我怀疑用户在保留给其他用户时正在访问数据库,但是无法证明我的观点,也没有任何解决方案。
有人以前有过这样的问题吗?有关如何解决此问题的任何建议?
非常感谢您的提前帮助。
编辑:我已使用从我收到的服务器错误电子邮件中检索到的相同信息手动查询数据库。我能够毫无问题地点击该条目。此外,似乎用户执行的完全相同的行为在大多数时间不会引发任何问题,而是在某些情况(尚不知道)中。总之,数据库中缺少条目绝对不是问题。
comment = Comment.objects.get(pk=comment_id)
验证ID是否存在于数据库中