【发布时间】:2014-06-18 15:39:55
【问题描述】:
帮我更改我的应用的权限名称
我的应用的权限:
[] articles | article | Can add article
[] articles | article | Can change article
[] articles | article | Can delete article
我想要西班牙语的权限名称
Articulo - Puede cambiar articulo
Articulo - Puede eliminar artículo
Articulo - Puede crear articulo
编辑:
我有两种选择:
1。创建中间件 AdminLocaleURLMiddleware
2。覆盖权限的unicode方法:
from django.utils import six
def permissions_new_unicode(self):
nombre_clase = six.text_type(self.content_type)
nombre_permiso = six.text_type(self.name)
if 'Can delete' in nombre_permiso:
nombre_permiso = nombre_permiso.replace('Can delete', 'Puede eliminar')
elif 'Can add' in nombre_permiso:
nombre_permiso = nombre_permiso.replace('Can add', 'Puede crear')
elif 'Can change' in nombre_permiso:
nombre_permiso = nombre_permiso.replace('Can change', 'Puede modificar')
return u'%s - %s' % ( nombre_clase.title(), nombre_permiso)
替换权限类中的__unicode__方法
from django.contrib.auth.models import Permission
Permission.__unicode__ = permissions_new_unicode
【问题讨论】:
-
您的浏览器设置为英文了吗?管理后端将以您的浏览器设置的任何语言显示。
标签: django permissions