【问题标题】:Instance of 'MongoEngine' has no 'StringField' member“MongoEngine”的实例没有“StringField”成员
【发布时间】:2020-04-30 02:06:15
【问题描述】:

尝试根据文档here 使用 Mongo Engine 为 WTForms 创建模型,并在尝试创建模型时返回错误“MongoEngine”实例没有“StringField”成员

class Example(db.Document):
      Value = db.StringField(max_length=200)

【问题讨论】:

  • 你是如何导入db的?

标签: mongodb flask mongoengine flask-mongoengine


【解决方案1】:

解决方法是直接使用mongoengine包,作为flask_mongoengine的依赖安装。

from mongoengine import StringField

class Example(db.Document):
  value = StringField(max_length=200)

错误是由pylint 提供的——python 的代码分析工具,它只是无法验证db 的动态成员。您的代码是正确的,它不会在运行时失败。

另一种选择是设置项目.pylintrc 以使此类警告静音,或者将 pylint cmets 放置在显示错误的行上:

# pylint: disable=no-member
value = db.StringField(max_length=200) # no error

【讨论】:

    猜你喜欢
    • 2020-05-05
    • 2019-05-27
    • 2020-12-04
    • 2021-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-22
    相关资源
    最近更新 更多