如何为 Django 模型添加 pydantic 字段验证?
How to add pydantic field validation for django model?
所以,我有一个django模型,比方说,它的字段划分如下:
class ModelA(models.Model):
f1 = models.CharField(max_length=127)
f2 = models.CharField(max_length=127)
我想创建一个 pydantic class,其字段类型包含这些模型的列表。考虑以下示例:
class TestPydanticClass(BaseModel):
model_a_values: List[ModelA]
f4: int
当我尝试创建 TestPydanticClass
对象时,它抛出以下错误:
RuntimeError: no validator found see `arbitrary_types_allowed` in Config
基于此,我在模型的Config
class下添加了arbitrary_types_allowed
为True,仍然报错。
有人可以建议实现此目标的更好方法吗?
你是这样设置的吗,在BaseModel里面?
class TestPydanticClass(BaseModel):
model_a_values: List[ModelA]
f4: int
class Config:
arbitrary_types_allowed = True
所以,我有一个django模型,比方说,它的字段划分如下:
class ModelA(models.Model):
f1 = models.CharField(max_length=127)
f2 = models.CharField(max_length=127)
我想创建一个 pydantic class,其字段类型包含这些模型的列表。考虑以下示例:
class TestPydanticClass(BaseModel):
model_a_values: List[ModelA]
f4: int
当我尝试创建 TestPydanticClass
对象时,它抛出以下错误:
RuntimeError: no validator found see `arbitrary_types_allowed` in Config
基于此,我在模型的Config
class下添加了arbitrary_types_allowed
为True,仍然报错。
有人可以建议实现此目标的更好方法吗?
你是这样设置的吗,在BaseModel里面?
class TestPydanticClass(BaseModel):
model_a_values: List[ModelA]
f4: int
class Config:
arbitrary_types_allowed = True