【问题标题】:Metaclass error from Flask-MongoKit来自 Flask-MongoKit 的元类错误
【发布时间】:2023-03-09 15:44:01
【问题描述】:

我正在尝试使用 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 内部的某个地方触发的。

【问题讨论】:

  • 查看here 看看它是否有效。
  • 当类的基础更改为与创建它们的内容不兼容时会发生这种情况。

标签: python flask mongokit


【解决方案1】:

问题原来是我错误地导入了类(我将父模块提供给db.register而不是类。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-05-25
    • 2014-12-24
    • 2018-12-27
    • 2018-09-14
    • 2013-07-22
    • 1970-01-01
    • 2013-05-30
    • 2012-05-11
    相关资源
    最近更新 更多