0
MongoAlchemy을 사용하면 두 가지 유형 중 하나 일 수있는 DocumentField를 사용할 수 있습니까? 예컨대 :MongoAlchemy : 두 가지 다른 DocumentField 중 하나
class A(Document):
foo = StringField()
class B(Document):
bar = StringField()
class C(Document):
child = DocumentField(A or B)
나는 일 수있는 몇 가지 옵션이 생각 :
- 공통 부모
A
및B
을 부여하고child = DocumentField(CommonParent)
을한다. DocumentField
을 무시하고 유효성 검사기를 변경하여 형식 목록 대신 검색기를 변경하는 사용자 지정Field
을 작성합니다.- 그냥
AnythingField
을 사용하십시오. 종류는 요점을 격파한다.
하지만 이미 완료했는지 궁금하십니까?
https://github.com/jeffjenkins/MongoAlchemy/tree/poly-queries
당신의 버그 수정의 조금을 할 생각이 있다면 : 나는 다형성 유형을 구현 곳 (나는 잠시 동안 사용 했더라도)
고마워요. 사용자 정의 필드는 내가 작업 한 경로입니다. https://gist.github.com/jmgirven/59a363f9aa8392abca80fbe6956c174b. 나는 랩/언랩이 작동한다고 생각하지만 DocumentField 코드에서 다른 것들 사이에서'dirty_ops'와'subfields'를 구현해야한다고 생각합니다. 어떤 포인터? –
오늘은 죄송합니다. 그래서, 내가 올바르게 기억한다면 더러운 작업은 하위 문서에서는 작동하지 않습니다. 하지만 변경된 필드 만 업데이트하려고하지 않는 한 괜찮습니다. (권장하지는 않습니다) –