새로운 개발자 django 버전의 관리 사이트에서 일부 모델 이름을 “카테고리”에서 “카테고리”로 변경하려면 어떻게합니까? 이전 버전 (관리자 사이트 및 관리 모델)에서는이 작업을 수행 할 수 있습니다.
http://www.the-dig.com/blog/post/customize-plural-name-django-admin/
그러나 이제는 modeladmin 기반 클래스에서 verbose_name_plural을 설정해도 아무런 효과가 없습니다. 누구든지 같은 문제를 권장합니까?
답변
메타 클래스 접근 방식이 여전히 작동하는 것처럼 보입니다. 따라서 모델 내에 메타 클래스를 배치하면 여전히 트릭을 수행합니다.
class Category(models.Model):
class Meta:
verbose_name_plural = "categories"
django는 필요할 때 대문자를 사용할 수있을만큼 똑똑하기 때문에 소문자를 사용합니다.
admin.py 파일이 아닌 모델 클래스 에서이 옵션을 설정하는 것을 발견했습니다. 다음은 dev 문서에서 설명하는 위치입니다.
http://docs.djangoproject.com/en/dev/ref/models/options/#verbose-name-plural
답변
이를 위해 모델에 메타 클래스를 추가해야합니다.
class Category(models.Model):
--- model field here ---
class Meta:
verbose_name = "Category"
verbose_name_plural = "Categories"
apps.py에서 모델 관리자를위한 보너스
class CategoryConfig(AppConfig):
name = "Category"
verbose_name = "Categories"