본문 바로가기
컴퓨터 활용/노년에 즐기는 코딩

[오유권 문학관 프로젝트] 클래스 Meta

by easyfly 2025. 7. 29.
반응형

 

✅ class Meta:란?

class Meta:는 Django 모델 내부에 작성하는 메타데이터 클래스입니다.
즉, 해당 모델에 대한 부가 설정 정보를 담는 곳입니다.

🔍 예시:

class Work(models.Model):
    title = models.CharField(max_length=200)
    ...

    class Meta:
        verbose_name = "오유권 원작"
        verbose_name_plural = "오유권 원작"

💡 역할

  • DB 필드 정의 외에 **관리자(admin)**에서의 표시나 동작을 제어
  • 정렬 순서, 퍼미션 이름, 표시 이름 등 다양한 설정 가능

✅ verbose_name의 의미

항목 설명
verbose_name 관리자(admin) 화면에서 해당 모델의 단수형 이름으로 사용됨
verbose_name_plural 관리자 목록 등에서 복수형으로 표시될 이름 설정

🔍 사용 예:

verbose_name = "오유권 원작"            # 단수형
verbose_name_plural = "오유권 원작"     # 복수형 (s 안 붙이고 그대로 사용)

이 설정이 없다면 Django는 자동으로 클래스명을 활용해 "Works", "Derived works"처럼 영어 복수형으로 표시합니다.


✅ 결과 비교

설정 없음 (기본) 설정 있음 (verbose_name)
Derived works 2차 저작물
Works 오유권 원작
Add derived work 2차 저작물 추가
Change work 오유권 원작 변경

✅ 요약

항목 설명
class Meta 모델의 부가 정보를 지정하는 내부 클래스
verbose_name 관리자 화면에서 모델 이름을 사람이 읽기 쉽게 표시
verbose_name_plural 목록이나 메뉴 등 복수형 표현 지정


지금처럼 오유권 원작, 2차 저작물 식의 명확한 구분은 사용자 친화적인 관리자 인터페이스를 만드는 데 큰 도움이 됩니다.

반응형

댓글