2012-09-07 18 views
0

我只想用我自己的翻譯爲名字列標題。只是。如何覆蓋django admin翻譯的列標題(一個字段的詳細名稱)

我的研究使我Django的包含自己的信息的文件:

#: models.py:235 
msgid "first name" 
msgstr "nombre propio" 

所以我創建的文件

./site/project/locale/es/LC_MESSAGES/django.po

,並把我的新3個系

#: models.py:235 
msgid "first name" 
msgstr "nombre" 

我已經試過了,我便想起所有可能的位置,並且在設置:

LOCALE_PATHS =( '/家庭/ djdev /網站/項目/區域設置',)

但alwaws管理員用戶列表顯示默認翻譯爲名字

我用過的解決方法是創建一個函數,並調用它的* list_display *如下:

def my_full_name(self, obj): 
    try: 
     return obj.last_name + ' ' + obj.first_name 
    except CustomProfile.DoesNotExist: 
     return '' 
my_full_name.admin_order_field = 'last_name' 

list_display = ('username', 'my_full_name', 'email') 

...這是足以讓我,但我仍然好奇,這是隻有列表視圖的解決方法,而不是表單。

問候,

+0

a。您是否記得運行compilemessages來實際更新翻譯django.mo文件? b。您是否嘗試在自己的區域設置/ es/LAC_MESSAGES/django.po中添加相同的「first_name」值並運行compilemessages? – tutuDajuju

+0

不......我發誓我已經做到了(選項a),但我忘了它。我的壞:(謝謝:$ – Martin0x777

+0

我會寫這個答案然後:D – tutuDajuju

回答

0

請記住始終運行python manage.py compilemessages實際創建需要顯示所翻譯的內容二進制文件django.mo