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

相關文章
相關標籤/搜索