from pydantic import BaseModel
class MyModel(BaseModel):
some_field: str = "defulat_value"
위의 예시에서는 'some_field' 필드의 기본값으로 'defulat_value'를 설정하고 있다. 때로는 기본값으로 공통된 객체를 사용하는 것이 편리할 때가 있는데, 이때 'default_factory'를 사용해 객체를 생성하고 반환하는 함수를 지정할 수 있다.
Field(default_factory=dict)
Field(default_factory=dict)
은 해당 필드에 기본값으로 빈 딕셔너리를 사용하겠다는 것을 의미하고, 필드가 초기화될 때 빈 딕셔너리가 생성되어 사용된다. 이를 통해 모델의 인스턴스가 생성될 때 해당 필드가 항상 빈 딕셔너리로 초기화 되도록 할 수 있다.
from pydantic import BaseModel, Field
class MyModel(BaseModel):
some_dict_field: dict = Field(default_factory=dict)
위의 예시에서 'some_dict_field' 필드에 기본값으로 빈 딕셔너리를 사용하는 것을 보여준다. 이 필드가 초기화될 때 빈 딕셔너리가 생성되어 사용된다.