【发布时间】:2021-10-05 09:45:51
【问题描述】:
所以,我有一个django模型,比方说,它的字段划分如下:
class ModelA(models.Model):
f1 = models.CharField(max_length=127)
f2 = models.CharField(max_length=127)
我想创建一个 pydantic 类,其字段类型包含这些模型的列表。考虑以下示例:
class TestPydanticClass(BaseModel):
model_a_values: List[ModelA]
f4: int
当我尝试创建 TestPydanticClass 对象时,它会引发以下错误:
RuntimeError: no validator found see `arbitrary_types_allowed` in Config
基于此,我在模型的Config 类下添加了arbitrary_types_allowed 为True,但它仍然会抛出错误。
有人可以提出一个更好的方法来实现这一点吗?
【问题讨论】:
-
如果
ModelA可以属于多个TestPydanticClass,则可以使用从ModelA到TestPydanticClass的ForeignKey或ManyToManyFIeldes. -
为什么需要 MTMField? TestPydanticClass 是一个 pyddantic 模型
-
它会抛出同样的错误还是其他错误?
-
同样的错误。
RuntimeError: no validator found for <class 'ModelA'>, see `arbitrary_types_allowed` in Config -
奇怪!我在这里做了同样的事情(设置任意类型允许=真)并且错误没有出现!
标签: django django-models pydantic