• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

Depends() 안에 callable한 것을 넣는 경우와 안 넣는 경우

23.07.31 14:24 작성 조회수 369

0

4:24 초에 user_repo: UserRepository = Depends()

이런 식으로 여기서는 Depends() 안에 아무것도 넣어주지 않는데, 그냥 Depends() 자체만으로는 어떤 의미가 있나요?

답변 1

답변을 작성해보세요.

1

안녕하세요! 해당 문법은 FastAPI에서 제공하는 syntactic sugar로 Depends() 안에 아무것도 넣어주지 않으면, FastAPI가 변수에 type hints로 적용한 class를 의존성으로 사용하게 됩니다.

따라서 말씀 주신 예시에서 아래의 두 개의 코드는 동일하게 동작합니다.

user_repo: UserRepository = Depends()
user_repo: UserRepository = Depends(UserRepository)

해당 내용에 대한 설명은 "섹션4 리팩터링 Repository Pattern" 강의 8분 28초 부분을 참고 부탁드립니다.

또 다음 FastAPI 공식 문서 링크에서 해당 내용을 확인하실 수 있습니다! https://fastapi.tiangolo.com/tutorial/dependencies/classes-as-dependencies/?h=depends#__tabbed_10_1

 

 

이해하기 쉽게 잘 설명해주셔서 감사합니다!!