1、设置admin站点中文显示,即汉化admin后台管理站点。

  • 方法一:修改settings文件
LANGUAGE_CODE = 'en-us'

TIME_ZONE = 'UTC'

更改为:

LANGUAGE_CODE = 'zh-Hans'

TIME_ZONE = 'Asia/Shanghai'
  • 方法二:添加中间件(注意:中间件是有顺序的,不要随意更改。)

    添加LocaleMiddleware,按下面的顺序设置即可。
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.locale.LocaleMiddleware', #支持中文语言
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

2、设置model字段名称汉化

在后台注册数据库后,admin后台才可以实现对models的管理,因此如果想要汉化字段,则需要修改的是model,而不是表单(或其他)。

class Product(models.Model):
id = models.IntegerField('序号',primary_key=True) #第一种方式:在最前面直接写。
name = models.CharField(max_length=50, null=False,verbose_name='名称') #第二种方式:标准写法,用verbose_name字段来定义。
weight = models.CharField(max_length=20, null=True, verbose_name='重量')
size = models.CharField('尺寸', max_length=20, null=True)
type = models.ForeignKey(Type, on_delete=models.CASCADE,verbose_name='类型',) def __str__(self):
return self.name

3、设置model名称汉化

即要汉化数据表名,也就是模型类名。这个需要通过class Meta:中的verbose_name和verbose_name_plural来设置。

class Product(models.Model):
id = models.IntegerField('序号',primary_key=True)
name = models.CharField(max_length=50, null=False,verbose_name='名称')
weight = models.CharField(max_length=20, null=True, verbose_name='重量')
size = models.CharField('尺寸', max_length=20, null=True)
type = models.ForeignKey(Type, on_delete=models.CASCADE,verbose_name='类型',) def __str__(self):
return self.name class Meta:
# 复数形式,如果只设置verbose_name,在Admin会显示为“产品信息s”
verbose_name_plural = "产品信息"
verbose_name = "产品信息"

4、设置app名称汉化

要实现app(这里以index为例)名称的汉化,主要有app中的__init__.py文件实现。

#修改app(index)后台显示名称为中文。

from django.apps import AppConfig
import os #修改app在Admin后台显示的名称 #default_app_config的值来自apps.py的类名
default_app_config = 'index.IndexConfig' #获取当前app的命名
def get_current_app_name(_file):
return os.path.split(os.path.dirname(_file))[-1] #重写类IndexConfig
class IndexConfig(AppConfig):
name = get_current_app_name(__file__)
verbose_name = '网站首页' #这个就是汉化后的名称。

Django:admin后台汉化问题的更多相关文章

  1. Django-报错信息及admin后台汉化

    django-admin 汉化 效果对比 django admin 后台 报错信息 配置 修改配置文件中的 LANGUAGE_CODE 与 TIME_ZONE 即可. 将 django admin 后 ...

  2. django博客项目6:Django Admin 后台发布文章

    在此之前我们完成了 Django 博客首页视图的编写,我们希望首页展示发布的博客文章列表,但是它却抱怨:暂时还没有发布的文章!如它所言,我们确实还没有发布任何文章,本节我们将使用 Django 自带的 ...

  3. Django Admin后台添加用户时出现报错:1452

    如果在使用Django Admin后台添加用户时出现报错: (1452, 'Cannot add or update a child row: a foreign key constraint fai ...

  4. 实现django admin后台到xadmin后台的转变

    虽然不做前端,还是喜欢好看的东西~.~ 之前同事估计也是功能实现没空管这个后台,前段时间闲的,稍微改了下外貌,前后对比下: Python3.5+Django1.9.7+Xadmin0.6.1 步骤如下 ...

  5. Django admin 后台管理

    在App 文件夹下的 admin.py 文件中写入 from django.contrib import admin from app名 import models admin.site.site_h ...

  6. django admin后台插件:django-suit入门

    去年9月底开始用django来做公司内部项目,开始对django有了一些了解,感觉django真的蛮强大的(也有很多人推荐flask,将来有空的话我会试试).今天的话只是介绍一个小东西,django管 ...

  7. django admin后台的简单使用

    创建自己的model.py文件 from django.db import models from django.contrib.auth.models import ( BaseUserManage ...

  8. Django Admin后台管理模块的使用

    Admin后台管理模块的使用 Django的管理员模块是Django的标准库django.contrib的一部分.这个包还包括其它一些实用的模块: django.contrib.auth django ...

  9. Django - admin后台、auth权限

    admin后台 一.创建一个管理员用户 (1).设置时区.语言(可选步骤) 打开settings.py,改成下面那样 LANGUAGE_CODE = 'zh-Hans' TIME_ZONE = 'As ...

随机推荐

  1. OSGI企业应用开发(十二)OSGI Web应用开发(一)

    前面文章中介绍了如何在OSGI应用中整合Spring和Mybatis框架,本篇文章开始介绍如何使用OSGI技术开发Web应用.对于传统的Java EE应用,应用中涉及到的Web元素无非就是Servle ...

  2. Linux  释放Linux 系统预留的硬盘空间

    释放 Linux 系统预留的硬盘空间 by:授客 QQ:1033553122   大多数文件系统都会保留一部分空间作为紧急情况时用(比如硬盘空间满了),这样能保证有些关键应用(比如数据库)在硬盘满的时 ...

  3. SSM 实训笔记 -11- 使用 Spring MVC + JDBC Template 实现筛选、检索功能(maven)

    SSM 实训笔记 -11- 使用 Spring MVC + JDBC Template 实现筛选.检索功能(maven) 本篇是新建的一个数据库,新建的一个完整项目. 本篇内容: (1)使用 Spri ...

  4. JSTL核心标签库——重定向标签、URL处理标签、网页导入标签

    <c:redirect>重定向标签 相当于HttpServletResponse的sendRedirect()方法. <%@page contentType="text/h ...

  5. 解决在IDEA 的Maven下 出现 Cannot access in offline mode 问题

    去掉maven前面的work offline模式

  6. go语言浮点数

    package main import "fmt" func main() { var num,num1 float32 num = 10 num1 = 100 fmt.Print ...

  7. SQL Server 合并复制遇到identity range check报错的解决 (转载)

    最近帮一个客户搭建跨洋的合并复制,由于数据库非常大,跨洋网络条件不稳定,因此只能通过备份初始化,在初始化完成后向海外订阅端插入数据时发现报出如下错误: Msg 548, Level 16, State ...

  8. for之于while的优势

    前言 for与while各有功效,下面就只列举for之于while的优势有哪些 优势 1.循环中提供了特殊的机会来将变量的作用域最小化.(无论是传统的还是for-each形式的)for循环,都允许声明 ...

  9. 转: ASP.NET MVC 多语言配置

    步骤1:打开VS2015新建测试项目. 步骤2:创建资源文件 App_GlobalResources下.    Resource1.resx    Resource1.zh-cn.resx   步骤3 ...

  10. Year 2038 problem (2038年问题)

    From Wikipedia, the free encyclopedia       Animation showing how the date would reset, represented ...