Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 集合对象不可调用在PyMongo中有服务器_info()的错误_Python_Django_Mongodb_Pymongo_Pymongo 3.x - Fatal编程技术网

Python 集合对象不可调用在PyMongo中有服务器_info()的错误

Python 集合对象不可调用在PyMongo中有服务器_info()的错误,python,django,mongodb,pymongo,pymongo-3.x,Python,Django,Mongodb,Pymongo,Pymongo 3.x,我正在将我正在工作的django项目升级到python3.4。部署后,我遇到了以下问题 (同一个项目在python2.7和pymongo2.8flavor下运行良好。) 我有pymongo3.2和django-mongo会话以及其他库 File "/home/ec2-user/py33/local/lib/python3.4/site-packages/mongo_sessions/session.py", line 8, in <module> from mongo_session

我正在将我正在工作的django项目升级到python3.4。部署后,我遇到了以下问题

(同一个项目在
python2.7
pymongo2.8
flavor下运行良好。)

我有
pymongo3.2
django-mongo会话
以及其他库

File "/home/ec2-user/py33/local/lib/python3.4/site-packages/mongo_sessions/session.py", line 8, in <module>
from mongo_sessions import settings

File "/home/ec2-user/py33/local/lib/python3.4/site-packages/mongo_sessions/settings.py", line 36, in <module>
MONGO_DB_VERSION = MONGO_CLIENT.connection.server_info()['version']

File "/home/ec2-user/py33/local/lib64/python3.4/site-packages/pymongo/collection.py", line 2348, in __call__
self.__name.split(".")[-1])

TypeError: 'Collection' object is not callable. If you meant to call the 'server_info' method on a 'Collection' object it is failing because no such method exists.
文件“/home/ec2 user/py33/local/lib/python3.4/site packages/mongo_sessions/session.py”,第8行,在
从mongo_会话导入设置
文件“/home/ec2 user/py33/local/lib/python3.4/site packages/mongo_sessions/settings.py”,第36行,在
MONGO_DB_VERSION=MONGO_CLIENT.connection.server_info()['VERSION']
文件“/home/ec2 user/py33/local/lib64/python3.4/site packages/pymongo/collection.py”,第2348行,在调用中__
self.\u name.split(“.”[-1])
TypeError:“集合”对象不可调用。如果要对“Collection”对象调用“server\u info”方法,则会失败,因为不存在此类方法。

我调查了看起来相似的问题。但我很确定我使用的是
pymongo3.2
本身

看来django mongo会话尚未更新以支持PyMongo 3.x。您的特殊问题是,在PyMongo 3.0中,Database.connection被重命名为Database.client。失败的代码行应更改为:

MONGO_DB_VERSION = MONGO_CLIENT.client.server_info()['version']

这可能不是唯一需要的改变。有关详细信息,请参阅。

我通过将
pymongo
降级为
2.8
版本暂时修复了该问题。那么,pymongo 3.2的问题是什么呢?还是别的什么?