我正在尝试使用Flask,Flask-Login和Flask-MongoKit组装基本登录系统。
这是我的User
课程:
class User(Document):
__collection__ = 'users'
structure = {
'username': basestring,
'password': basestring,
'date_created': datetime
}
required_fields = ['username', 'password']
default_values = {
'date_created': datetime.utcnow
}
当我将Document模型连接到数据库(db.register([User])
)时,查询文档(db.User.one({'username': form.username})
)会给我一个可爱的错误:
TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases
我根本不理解这个错误,我不知道如何修复它。出了什么问题?
注意:我了解元类冲突是什么。我没看到的是我是如何造成的:它似乎是在MongoKit中的某个地方触发的。
答案 0 :(得分:0)
问题结果是我导入了错误的类(我将父模块提供给db.register
而不是类。