我有一个基于 pythonflask
的应用程序,它写入 mongo 数据库。
我正在使用python 3
以下内容requirements.txt
Flask
Jinja2
Werkzeug
certifi
chardet
gunicorn
requests
flask_restful
flask
pymongo
我遇到了这个问题:
Traceback (most recent call last):
File "bin/app.py", line 4, in <module>
from helper import save_message_2_db
File "/app/bin/helper.py", line 1, in <module>
from database import DataAccess, MongoDB
File "/app/bin/database.py", line 1, in <module>
import pymongo
File "/app/.heroku/python/lib/python3.6/site-packages/pymongo/__init__.py", line 83, in <module>
from pymongo.collection import ReturnDocument
File "/app/.heroku/python/lib/python3.6/site-packages/pymongo/collection.py", line 21, in <module>
from bson.code import Code
File "/app/.heroku/python/lib/python3.6/site-packages/bson/code.py", line 19, in <module>
from bson.py3compat import string_type, PY3, text_type
ModuleNotFoundError: No module named 'bson.py3compat'
我试图理解为什么会发生这种情况?
这部分是我关心的
File "/app/.heroku/python/lib/python3.6/site-packages/pymongo/__init__.py", line 83, in <module>
from pymongo.collection import ReturnDocument
File "/app/.heroku/python/lib/python3.6/site-packages/pymongo/collection.py", line 21, in <module>
from bson.code import Code
File "/app/.heroku/python/lib/python3.6/site-packages/bson/code.py", line 19, in <module>
from bson.py3compat import string_type, PY3, text_type
ModuleNotFoundError: No module named 'bson.py3compat'
大多数互联网博客/链接都告诉我bson
,pymongo
彼此相处得不好。pymongo
有自己的版本,bson
我的requirements.txt
.
我正在寻求帮助,看看为什么会发生这种情况,以及如何解决这个问题。
更新#1
我正在使用pymongo-3.5.1
,这就是问题仍然存在的地方。我刚刚降级,pymongo-3.5.0
问题就消失了。
这意味着我知道解决此问题的解决方法,但上游代码/包有一些需要修复的问题。