在django的开发中,很多时候我们希望app在admin中显示成我们想要的中文名,而不是显示默认的app_label名称。
比如我们有一个blog应用,在我们的blog app目录下面,默认会生成一个apps.py文件,类似:
# blog/apps.py
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.apps import AppConfig
class BlogConfig(AppConfig):
name = 'blog'
我们可以在通过设置verbose_name字段,来指定app在后台显示的名称。你可能会发现,仅仅增加verbose_name之后,仍然没有效果。别慌,还需要一个小的设置就ok了!
在导入app时,django会检查每个在INSTALLED_APPS中的app的default_app_config变量,如果没有设置,django会使用基类AppConfig,因此我们只需要在init.py中指定default_app_config即可,如下:
# blog/__init__.py
default_app_config = 'blog.apps.BlogConfig'
通过以上两步,即可实现自定义app在admin中的显示名称。
.