importerror - flask-mongoengine 从 mongoengine.document 导入文档,EmbeddedDocument ImportError:无法导入名称文档
问题描述
我想使用flask-mongoengine 开发应用程序,但在启动应用程序时出现importError
我的烧瓶 run.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from app import app
if __name__ == '__main__':
app.run(debug=True)
我的应用程序初始化.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from flask import Flask
import flask_mongoengine
from flask_mongoengine import MongoEngine
app = Flask(__name__)
app.config['MONGODB_SETTINGS'] = {
'db': 'datasync_datax',
'host': '192.168.100.85',
'port': 27017
}
db = MongoEngine()
db.init_app(app)
启动时遇到的问题:
Traceback (most recent call last):
File "/Applications/PyCharm.app/Contents/helpers/pydev/pydevd.py", line 1596, in <module>
globals = debugger.run(setup['file'], None, None, is_module)
File "/Applications/PyCharm.app/Contents/helpers/pydev/pydevd.py", line 974, in run
pydev_imports.execfile(file, globals, locals) # execute the script
File "/Users/huan/sources/python-sources/bt-ware-datasync-datax/run.py", line 4, in <module>
from app import app
File "/Users/huan/sources/python-sources/bt-ware-datasync-datax/app/__init__.py", line 5, in <module>
import flask_mongoengine
File "/Library/Python/2.7/site-packages/flask_mongoengine/__init__.py", line 6, in <module>
import mongoengine
File "/Library/Python/2.7/site-packages/mongoengine/__init__.py", line 3, in <module>
from mongoengine import document
File "/Library/Python/2.7/site-packages/mongoengine/document.py", line 44, in <module>
class EmbeddedDocument(six.with_metaclass(DocumentMetaclass, BaseDocument)):
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six.py", line 566, in with_metaclass
return meta("NewBase", bases, {})
File "/Library/Python/2.7/site-packages/mongoengine/base/metaclasses.py", line 151, in __new__
CachedReferenceField) = mcs._import_classes()
File "/Library/Python/2.7/site-packages/mongoengine/base/metaclasses.py", line 243, in _import_classes
Document = _import_class('Document')
File "/Library/Python/2.7/site-packages/mongoengine/common.py", line 27, in _import_class
from mongoengine.fields import __all__ as fields
File "/Library/Python/2.7/site-packages/mongoengine/fields.py", line 34, in <module>
from mongoengine.document import Document, EmbeddedDocument
ImportError: cannot import name Document
我在python2.7中的开发环境
我不知道怎么了。
pymongo、mongoengine、flask-mongoengine 已经安装
解决方案
问题已解决。
我更新了我的图书馆烧瓶-mongoengine!
sudo pip install --upgrade flask-mongoengine
推荐阅读
- r - 从组外调用值时使用自定义函数进行汇总
- python - 单击按钮时如何减少屏幕上的余额数
- javascript - 将英国夏令时日期更改为 GMT 日期
- c# - (this as IFoo) 有什么区别
).Do() 和以下代码中的 this.Do() ? - django - "to" 参数必须是列表或元组
- crystal-reports - 分发 Crystal Reports 文件
- algorithm - 在不超出供应商能力的情况下在供应商之间分配消费者
- mongodb - 配置 TLS 后 MongoDB 将无法启动
- ios - 如何在 iOS 应用中存储 Google Firestore 数据?
- jsf - 我如何将 p:spinner 值传递给变量