본문으로 건너뛰기

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)