PyCharmは、MongoEngineフィールドの値を操作するときに警告を出します。例えば、StringField
で作業するときstr
のように:私はtyping.cast
(すなわちtyping.cast(str, doc.s).endswith('test')
を使用しない限り、私はクラスStringFieldの警告未解決の属性参照「endswith」を取得MongoEngineフィールド、型付け、およびPyCharm
class ExampleDocument(Document):
s = StringField()
doc = ExampleDocument(s='mongoengine-test')
print(doc.s.endswith('test'))
コードが意図したとおりに実行されますが、そこにあります。これらの警告を取り除き、またMongoEngineフィールドタイプに必要なオートコンプリートを取得する方法はありますか?
ありがとうございます、それは私が使用しているものです。あるタイプが別のタイプを拡張することを宣言する方法はありますか(例えば、 'StringField'は' str'のすべてのメソッドを実装しています)? –
コメントやPython 3.xのタイプヒントで 'Union [str、StringField]'を使うことができます。 Unionは 'typing'モジュールからインポートする必要があります。 – Markus