pydantic 中是否有任何内置方式来指定选项?例如,假设我想要一个必须具有值“foo”或“bar”的字符串值。
我知道我可以使用正则表达式验证来执行此操作,但是由于我将 pydantic 与 FastAPI 一起使用,因此用户只会将所需的输入视为字符串,但是当他们输入某些内容时,它会给出验证错误。pydantic 的所有内置验证都显示在 api 界面中,所以如果有类似的东西会很棒
class Input(BaseModel):
option: "foo" || "bar"
Run Code Online (Sandbox Code Playgroud) 我想用另一种类型替换特定类型,如下所示:
interface Human {
name: string;
age: number;
isMarried: boolean;
animals: [
{ name: string, age: number},
{ name: string, age: number}
]
}
type HumanString = ReplaceTypes<Human, number, string>
/*
HumanString {
name: string;
age: string;
isMarried: boolean;
animals: [
{ name: string, age: string},
{ name: string, age: string}
]
}
*/
Run Code Online (Sandbox Code Playgroud)
ReplaceTypes<OriginalType, OldType, NewType>
Oldtype在所有嵌套出现的情况下,应替换具有以下接口的地方NewType