python Tortoise-ORM.在PyDantic模型中显示外部实体

ykejflvf  于 2023-03-28  发布在  Python
关注(0)|答案(1)|浏览(279)

面对在PyDantic模型中显示外部实体的问题。
我在数据库中有一个实体结构:

class User(models.Model):
    id = fields.BigIntField(pk=True)
    username = fields.CharField(max_length=1024, null=True)

class Message(models.Model):
    id = fields.BigIntField(pk=True)
    date = fields.DatetimeField()
    user: fields.ForeignKeyRelation["User"] = fields.ForeignKeyField("models.User", on_delete=fields.CASCADE)
    text = fields.TextField()

我通过pydantic_model_creator创建模型:

UserRp = pydantic_model_creator(User, name="UserRp")
MessageRp = pydantic_model_creator(Message, name="MessageRp")

我正试图通过构造调用请求:

await MessageRp.from_queryset(Message.filter(user=user_id).order_by("-date"))

返回除user之外的所有字段。即使您使用prefetch_related(“user”)方法补充字符串。
告诉我可能是什么问题。将include添加到pydantic_model_creator失败

y4ekin9u

y4ekin9u1#

你应该在创建pydantic模型之前调用tortoise intialization:
https://tortoise.github.io/examples/pydantic.html#relations-early-init

相关问题