작성
·
35
0
안녕하세요! fastapi 입문으로 강사님 강의를 듣게되어 영광입니다.
강의 내용 따라 진행은 잘되고 있으나 강사님이 구현하신
class SubCategoryCreate(BaseModel):
model_config = ConfigDict(from_attributes=True)
subcategory_name: str
category_id: int
model_config = {
"json_schema_extra": {
"example": { "subcategory_id": 1, "subcategory_name": "수도", "category_id": 1 }
}
이렇게 구현을 하셨는데 model_config 변수가 두번사용 되어 마지막에 사용된 model_config 값이 첫번째 ConfigDict(from_attributes=True) 값을 덮어 씌워 첫번째로 사용된 model_config 변수의 역할이 없어지는것이 아닌가 하여 의문이 들어 왜 같은 변수명으로 덮어 씌우는지 궁금하여 질문 드립니다.
답변 1
0
class SubCategoryCreate(BaseModel):
subcategory_name: str
category_id: int
model_config = ConfigDict(
from_attributes=True, # 첫 번째 설정
json_schema_extra={ # 두 번째 설정
"example": {
"subcategory_id": 1,
"subcategory_name": "수도",
"category_id": 1
}
}
)
원래는 이렇게 해야 맞습니다만 순서대로 하다보니 두번 할당을 했었네요 ^^; 수정해놓겠습니다.
게다가 딕셔너리를 그대로 db에서 받아와서 validation 에러도 발생하지 않았었네요.
원래대로면 저렇게하면 pydantic 에러가 뜨는게 정상입니다 ㅎㅎ;
감사합니다!