正如克里斯在上述评论中所说,您的代码段有效。在代码的其他位置,您可能会错误地捕获异常。
您可能会遇到以下情况:
try: do_something()except User.MultipleObjectsReturned, User.DoesNotExist: pass
代替:
try: do_something()except (User.MultipleObjectsReturned, User.DoesNotExist): pass
没有括号,except语句等效于Python 2.6+中的以下语句
except User.MultipleObjectsReturned as User.DoesNotExist:
User.MultipleObjectsReturned异常实例将覆盖
User.DoesNotExist。
当同一个进程稍后处理不同的请求时,您会得到,
TypeError因为您的代码正试图调用已替换的异常实例
User.DoesNotExist。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)