TIL DAY 34 || How to validate input data with Enum Class

TK·2021년 4월 4일
0

Enum class

  • Enum class 에 인스턴스들을 선언한다.
  • 처음에는 Enum.__memebers__ 로 Enum class 의 변수 명들을 가져와서, 입력되는 데이터가 그 중에 없으면 에러를 리턴하려고 했으나
  • input 값은 모두 베이커리, 카페 이런 한글로 들어오기 때문에, 한글을 변수로 선언할 수는 없었다.
  • 그래서 Enum class 를 iterate 하면서 각 변수의 value 들을 담은 list 를 만드는ExtendedEnum 클래스를 생성했다. 해당 클래스는 Enum 클래스 상속을 받았다.

validation

다음과 같이 category_name 이 ExtendedEnum 클래스를 상속받아 만든 CategorySet 에 없으면 transaction.set_rollback(True) 를 call 해서 모든 db 수정 값을 초기화 시킨다.

profile
Backend Developer

0개의 댓글