我在 mongodb 中有一个常规用户集合,由 pydantic 建模如下:
class User(BaseModel):
id: str = Field(default_factory=uuid.uuid4, alias="_id")
username: str
email: str
password: str
class Config:
allow_population_by_field_name = True
schema_extra = {
"example": {
"_id": "066de609-b04a-4b30-b46c-32537c7f1f6e",
"username": "username",
"email": "[email protected]",
"password": "randomHashedPassword"
}
}
我还有一个时间序列用户数据集合,我还没有在 pydantic 中建模。 metaField 指向元数据字段,该字段将包含特定用户的 ID,以便我在查询用户数据集合时可以引用和填充用户。
处理这个问题的最佳方法是什么?使用 SQLAlchemy 和关系数据库,我可以创建与外键的关系,这实际上不适用于基于文档的数据库。我应该为 mongodb 研究什么类似的概念?
我是否应该创建一个聚合管道,并且只在元数据字段中查找用户 ID?
我不想使用 ODMantic,除非我绝对必须这样做,因为那是 pydantic 之外的另一个依赖项。