2015-04-24 55 views
1

我有django應用程序,它是用於多個電視設備的JavaScript應用程序的後端。每個設備都有不同的前端,但我不認爲創建多個.po文件對於此目標是個好主意,因爲大多數翻譯對於這些設備是重複的。Django的方式爲一種語言或參數化翻譯的多個翻譯

是否可以爲翻譯添加額外的參數,例如在我的情況下,某些帶參數「device」的函數會非常有用?如果沒有,在Django的方式如何做?

+0

翻譯取決於您發送的請求,例如,當您發送來自瀏覽器的請求時,它發送標題「Accept-Language:en-US,en; q = 0.8,ms; q = 0.6,ja; q = 0.4」將決定哪個語言服務器必須返回輸出。 – Nilesh

回答

0

我假設你正在使用Django來創建一個API,並且你使用JavaScript來使用API​​。您可以檢查標題中的用戶代理字符串,並根據請求進行適當的重定向。

+0

是的,Django是我的API,但我需要的是爲一種語言存儲兩種不同版本的翻譯。例如,在一個設備上,後退按鈕稱爲「後退」,在另一個「前一個」上。我想將所有翻譯存儲在.po文件中,而不是存儲在js客戶端中。這就是爲什麼我正在尋找一些方法,如'ugettextByParam(msgID,deviceID)' –

0

所以你需要翻譯所有版本。至少所有的鑰匙。如果你想將不同的鍵映射到相同的值,你可以做某事。喜歡這個。

#: core/models.py:160 
msgid "previous" 
msgstr "Previous" 

#: core/models.py:161 core/models.py:169 
msgid "Back" 
msgstr "Previous"