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

本文详细介绍了如何在Django项目中进行中文配置,包括设置语言环境、修改APP名称、数据库表名及字段名的方法,并提供了admin及xadmin中文显示的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

准备:setting.py設置

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

#所以更改setttings.py 下 LANGUAGE_CODE = 'zh-Hans' 

# LANGUAGE_CODE = 'en-us'

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

USE_I18N = True

USE_L10N = True

USE_TZ = True

 

一、修改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'

说明:

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

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

3.运行

124243_75yp_3018050.png

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

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的内部类来设置

2.运行

124653_fd6e_3018050.png

 

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

1.model.py下举例

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

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

2.运行

上文有参照

125051_5SXA_3018050.png

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

125459_FNFY_3018050.png

 

四、admin\xadmin中文的显示

c82f95a2b78d726b7f2a8f056fcb4d14ac0.jpg

753328b2f2435c893a8a7f468fe46b34bc8.jpg

这两种方式效果是一样的

8e8607516f1bb42c8a7d09250ecb5b97df3.jpg

461142c09e9f2fc045d48e251d1a7d265f6.jpg

 

 

参考文档

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

转载于:https://my.oschina.net/u/3018050/blog/1798386

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值