2010-04-06 7 views
89

새 장치 장고 버전의 관리 사이트에서 일부 모델 이름을 "범주"에서 "범주"로 어떻게 변경합니까? 이전 버전 (관리 사이트 및 관리 모델 없음)에서는이 작업을 수행 할 수있었습니다. http://www.the-dig.com/blog/post/customize-plural-name-django-admin/Django fix Admin plural

그러나 이제 modeladmin 기반 클래스에 verbose_name_plural를 설정해도 아무런 효과가 없습니다. 누구든지 동일한 문제를 겪고 있습니까?

+0

... 당신이 메타 중첩 된 클래스 내부에 퍼팅하고 있는지 위치 : 여기 그것이 설명하는 dev에 문서의 위치? – rescdsk

+0

yah, 나는 새 버전이 모델 내부의 Meta 클래스를 제거했다고 생각했습니다. 외관상으로는 - 그들은 단지 관리 클래스를 사용하여 작업을 더욱 복잡하게 만들었습니다 ... – drozzy

답변

162

글쎄, 메타 클래스 접근 방식이 여전히 작동하는 것처럼 보입니다. 장고는 우리가 그것을 필요로 할 때 그것을 활용할 수있을만큼 똑똑하다, 우리는 여기에 소문자를 사용

class Category(models.Model): 
    class Meta: 
     verbose_name_plural = "categories" 

참고 : 그래서 여전히 트릭을 할 것입니다 모델 내에서 메타 클래스를 배치.

이 옵션은 admin.py 파일과 달리 model-class weird에서 설정하는 것이 좋습니다.
그것은 장고 1.1.1에서 나를 위해 작동 http://docs.djangoproject.com/en/dev/ref/models/options/#verbose-name-plural

+10

admin.py가 아닌 model 클래스에서 이것을 설정하는 아이디어는 [DRY] (http://en.wikipedia.org/wiki)로 귀결됩니다./Don % 27t_repeat_yourself) - 관리자 만이 모델에 대한이 정보를 사용하는 독창적 인 것이기 때문에 그것이 항상 존재한다는 것을 의미하지는 않습니다. 다행히도 코드의 어딘가에 모델의 복수형 이름이 필요하다면 휠을 다시 발명하는 대신이 속성을 사용할 것입니다. – cibyr