python测试开发django-21.admin后台表名称和字段显示中文

前言

admin后台页面表名称(默认会多加一个s)和字段名称是直接显示在后台的,如果我们想设置成中文显示需加verbose_name和verbose_name_plural属性

verbose_name

如下图所示,列表标题显示的是数据库里面的字段(Field)名称,如果想让它显示中文的名称,需加个verbose_name参数

# models.py
class Article(models.Model):
    '''文章'''
    title = models.CharField(max_length=30, verbose_name="标题")  # 标题
    body = models.TextField(verbose_name="正文")                # 正文
    auth = models.CharField(max_length=10, verbose_name="作者")   # 作者
    # 创建时间
    create_time = models.DateTimeField(auto_now_add=True, verbose_name="创建时间")
    # 最后更新时间
    update_time = models.DateTimeField(auto_now=True, verbose_name="最后更新时间")

    def __str__(self):
        return self.__doc__ + "title->" + self.title

刷新下页面就可以看到显示中文了

verbose_name_plural

表名称Articles这地方也可以改成中文显示,加个verbose_name_plural属性

class Article(models.Model):
    '''文章'''
    title = models.CharField(max_length=30, verbose_name="标题")  # 标题
    body = models.TextField(verbose_name="正文")                # 正文
    auth = models.CharField(max_length=10, verbose_name="作者")   # 作者
    # 创建时间
    create_time = models.DateTimeField(auto_now_add=True, verbose_name="创建时间")
    # 最后更新时间
    update_time = models.DateTimeField(auto_now=True, verbose_name="最后更新时间")

    def __str__(self):
        return self.__doc__ + "title->" + self.title

    class Meta:
       verbose_name_plural = '文章列表'

注意:verbose_name_plural属性是写在class Meta下的, class Meta嵌套在class Article里

关于class Meta的更多语法可以参考这篇https://www.cnblogs.com/tongchengbin/p/7670927.html

posted @ 2019-02-01 13:02  上海-悠悠  阅读(2488)  评论(0编辑  收藏  举报