본문으로 건너뛰기

Enumeration Definition

Basic Structure​

enumeration:
EnumName:
meta: enum @db(field) @json(field)
fields:
field1: type [annotations]
field2: type [annotations]
enum:
VALUE1: code1,label1
VALUE2: code2,label2

Meta Annotations​

  • @db(fieldName): 데이터베이스 저장 필드 지정
  • @json(fieldName): JSON 직렬화 필드 지정

Field Annotations​

  • @length(n): 문자열 길이 제한
  • @code: 데이터베이스 저장 필드 및 json 직렬화 필드 지정

Enum Values Definition​

  • enumeration 이름 정의 후 field 정의부의 순서에게 값을 정의

Enumeration 예시​

enumeration:
BoardType:
meta: enum @db(code) @json(code)
fields:
code: string(2) @length(3) -- 타입코드
name: string(50) -- 이름
enum:
PUBLIC: PB,공개
PRIVATE: PV,개인
NOTICE: NT,공지사항

UserStatus:
meta: enum
fields:
status: string(1) @code
description: string(20)
enum:
ACTIVE: A,활성
INACTIVE: I,비활성
SUSPENDED: S,정지

Naming Conventions​

열거형​

  • 클래스명: PascalCase + descriptive suffix (BoardType, UserStatus)
  • 상수명: UPPER_CASE (PUBLIC, PRIVATE, ACTIVE)