Python / Django 1.5 DatabaseWrapper线程错误
作者:互联网
当我运行服务器并尝试加载本地版本的Web应用程序时,在Django 1.5.1(和1.5.0)和mysql中抛出以下DatabaseError:
DatabaseError at /
DatabaseWrapper objects created in a thread can only be used in that
same thread. The object with alias ‘default’ was created in thread id
4365488128 and this is thread id 140735183980896.
例外位置如下:
/Users/USERNAME/.envs/PROJECT_NAME/lib/python2.7/site-packages/django/db/backends/init.py
in validate_thread_sharing, line 154
这仅在第一页加载时发生.当我点击刷新时,Web应用程序按预期加载.当我改变Django / python代码并且本地服务器需要重新验证时,错误返回.当发生这种情况时,第一次加载再次抛出DatabaseError,后续加载再次抛出.
这个问题只发生在我的Django 1.5项目上.我已经卸载了mysql并清除了位于/usr/local/var / mysql中的mysql二进制文件.全新安装的mysql还没有解决这个问题.
这里讨论类似的DatabaseError,但我无法遵循他们的解决方案:
https://code.djangoproject.com/ticket/17998
我在这里不知所措,任何想法或专业知识都将受到赞赏.谢谢.
解决方法:
我在导入django之前通过猴子修补解决了这个问题.*:
import eventlet
eventlet.monkey_patch()
你理解的比我在这里使用线程.
标签:python,mysql,python-2-7,django,django-1-5 来源: https://codeday.me/bug/20190517/1122501.html