django 管理台App_label中文显示

网上有很多关于django工程的app_label中文设置的文档,都集中在如下两种方式:
1、在Models中的Meta中使用app_label =“xxx”;
但该方法有诸多不便,尤其是外键关系的Models都需要修改,同时一些连接目录页相应的有改动。故放弃这种方法的修改。
2、在admin的base_site.html模板中修改,或者使用Filter;但没有很彻底的修改文档。其他各页面还是显示app目录名称

故在此分享,个人对django 管理台的app中文设置方法:
1、修改admin管理后台涉及的几个html模板
django admin涉及的html模板如下:
   base.html
   base_sites.html
   index.html
   app_index.html
   change_form.html
   change_list.html
   object_history.html

所在目录是:%PYTHONHOME%\Lib\site-packages\django\contrib\admin\templates\admin

将上述几个html模板copy到相关app文件目录下的templates\admin 下;再做修改

2、自定义Filter tags
在应用下,新建一个templatetags文件夹,新建一个空文件__init__.py和Filter过滤器创建的py文件,如:
xxx_extras.py 文件名随便取

修改app_label的过滤器内容如下:
from django import template

register = template.Library()
@register.filter(name='transto')
def transto(value):
    logger.info('trans source string: '+value)
    if re.match(ur'xxx',value):
        resvalue = "xxx管理"
    else:
        if re.match(ur'xxx',value):
            resvalue = "xxx管理"
        else:
            resvalue = value             
    return resvalue

上述过滤器使用了re 正则表达式,因为在admin的模板中显示app_label等有不同的大小写和il18n 翻译的中文字符串。

3、修改admin涉及到的上述html文件
所有html模板要使用过滤器,首先必须load 过滤器:
  {% load xxx_extras %}

base.html  改动,将html中存在{{ title }}项的改为 
{{ title|transto }}

base_site.html 改动,将 {{ title }}  改为 {{ title|transto }}
并将Django 字符串修改为 相应的中文,比如 “ xxx 管理台”

index.html 改动:
       

app_index.html改动:
{% for app in app_list %}
   {{ app.name|transto }}
{% endfor %}

change_form.html改动:

change_list.html改动:

object_history.html改动:

注上述设计href的app_label不做中文app_label转换。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/88305/viewspace-742282/,如需转载,请注明出处,否则将追究法律责任。

user_pic_default.png
请登录后发表评论 登录
全部评论
<%=items[i].createtime%>

<%=items[i].content%>

<%if(items[i].items.items.length) { %>
<%for(var j=0;j
<%=items[i].items.items[j].createtime%> 回复

<%=items[i].items.items[j].username%>   回复   <%=items[i].items.items[j].tousername%><%=items[i].items.items[j].content%>

<%}%> <%if(items[i].items.total > 5) { %>
还有<%=items[i].items.total-5%>条评论 ) data-count=1 data-flag=true>点击查看
<%}%>
<%}%> <%}%>

转载于:http://blog.itpub.net/88305/viewspace-742282/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值