0
MongoAlchemyを使用すると、DocumentFieldを2つのタイプの1つにすることは可能ですか?例えば:MongoAlchemy:異なる2つのDocumentFieldのうちの1つ
class A(Document):
foo = StringField()
class B(Document):
bar = StringField()
class C(Document):
child = DocumentField(A or B)
私が働くかもしれないいくつかのオプションを考えた:
- が共通の親
A
とB
を与え、その後、child = DocumentField(CommonParent)
を行います。 - は、
DocumentField
を上書きしますが、タイプのリストではなく1つのタイプを検索するようにバリデーターを変更します。 AnythingField
を使用してください。キンダはその点を打ち負かす。
しかし、すでに完了しているのだろうか?
https://github.com/jeffjenkins/MongoAlchemy/tree/poly-queries
あなたはだバグ修正のビットを行うために喜んでいる場合:私は、ポリモーフィック型を実装するところ(私はしばらくの間、それを使用しましたが)
ありがとうございました。カスタムフィールドは私が取り組んでいるルートです。 https://gist.github.com/jmgirven/59a363f9aa8392abca80fbe6956c174b。私はラップ/アンラップが機能していると思いますが、DocumentFieldコードから、私は他のものの中で 'dirty_ops'と' subfields'を実装する必要があると思います。すべてのポインタ? –
今日、このことについて通知されたばかりです。申し訳ありません。だから、私が正しく覚えていれば、不正な操作はサブ文書では機能しません。しかし、変更されたフィールドだけを更新しようとしていない限り、それは大丈夫です(私はお勧めしません) –