Django框架下admin.py的中文修改+xadmin中文修改

准备:setting.py設置

#其中 zh-Hans是简体中文。 zh-Hant是繁体中文。html

#因此更改setttings.py 下 LANGUAGE_CODE = 'zh-Hans' python

# LANGUAGE_CODE = 'en-us'

LANGUAGE_CODE = 'zh-Hans'
# TIME_ZONE = 'UTC'
TIME_ZONE = 'CCT'

USE_I18N = True

USE_L10N = True

USE_TZ = True

 

1、修改APP名称为中文

1.__init__.py

#-*- coding:utf-8 -*-
import pymysql
pymysql.install_as_MySQLdb()

from django.apps import AppConfig
import os

default_app_config='imgs_db.ImgsDbConfig'

def get_current_app_name(_file):
    return os.path.split(os.path.dirname(_file))[-1]

class ImgsDbConfig(AppConfig):
    name = get_current_app_name(__file__)
    verbose_name = '多图片数据库'

2.app.py

from django.apps import AppConfig

class ImgsDbConfig(AppConfig):
    name = 'imgs_db'

说明:mysql

(1)app.py中的class命名要和__init__.py中的class命名一致;sql

(2)default_app_config='imgs_db.ImgsDbConfig'中的部分是class ImgsDbConfig(AppConfig):
    name = 'imgs_db'数据库

3.运行

2、修改数据库表名称为中文

1.models.py

from django.db import models
from django.contrib import admin

class Imgs(models.Model):
    id = models.AutoField(max_length=10, primary_key=True, verbose_name='id')
    img = models.ImageField(upload_to='./imgs/',verbose_name='图片地址')
    single = models.CharField(max_length=20,null=True, blank=True,verbose_name='图片名称')

    class Meta:
        verbose_name = '多图上传imgs_db'#这里设置没显示
        verbose_name_plural = '多图上传_图片文件'

    def __unicode__(self):  # __str__ on Python 3
        return (self.id,self.img)

    def __str__(self):
        return str(self.single)


class Imgs_name(models.Model):
    id = models.AutoField(max_length=10, primary_key=True, verbose_name='id')
    name = models.CharField(max_length=10,verbose_name='图片库名称')
    imgs = models.ManyToManyField(Imgs, related_name='imgs',verbose_name='图片表')

    class Meta:
        verbose_name_plural = '多图上传_图片集'

    def __unicode__(self):  # __str__ on Python 3
        return (self.id,self.name,self.imgs)

    def __str__(self):
        return self.name

经过class Meta的内部类来设置django

2.运行

 

3、修改数据库表下的字段名为中文

1.model.py下举例

img = models.ImageField(upload_to='./imgs/',verbose_name='图片地址')

说明:verbose_name='图片地址'中的verbose_name就是设置中文的部分app

2.运行

上文有参照spa

说明:这里若是涉及ManyToManyField等字段的多文件多图会比较麻烦,用了多对多关系,想显示中文在添加部分须要使用__str__内置方法出字符3d

 

4、admin\xadmin中文的显示

这两种方式效果是同样的code

 

 

参考文档

1.Django admin怎样设置App名称为中文:https://jingyan.baidu.com/article/fa4125ac056fd428ac7092d3.html

相关文章
相关标签/搜索