2014-10-29 59 views
0

我有我的應用程序的API接口,並希望這些調用的響應支持各種語言。Django:本地化API調用的迴應

def get_student(request): 
//code 
return JsonResponse(content={"Message": "student is found"}, status=200) 

我已經通過django-localization文件不見了,已經創建了一個PO和MO文件特定的語言。 現在我被困在如何使用這些文件並給出特定語言的響應。

任何幫助或引用將不勝感激。

編輯:此人幫助
settings.LOCALE_PATHS =(os.path.join(PROJECT_DIR, '區域')) 和

https://docs.djangoproject.com/en/1.3/howto/i18n/

+0

您正在鏈接到相當舊的文檔版本(1.3.x)... – 2014-10-29 12:01:15

+0

使用遺留代碼進行項目,很遺憾沒有選擇 – navyad 2014-10-29 12:07:14

+0

好吧,運氣不好。但是這部分並沒有太多變化...... – 2014-10-29 12:12:01

回答

0

你擔心的.mo和之前。 po文件,您需要在您的設置中設置各種標誌,語言和中間件,並在應用程序和模板中標記可翻譯的文本。

你應該從這裏開始https://docs.djangoproject.com/en/1.3/topics/i18n/大圖片和定義,然後在這裏繼續https://docs.djangoproject.com/en/1.3/topics/i18n/translation/如何標記可翻譯的字符串。因爲有一些配置工作要做,所以不要跳過筆記。

關於如何標記作爲字符串翻譯,在上面的代碼中,它應該是這樣的:

from django.utils.translation import ugettext as _ 

def get_student(request): 
    //code 
    return JsonResponse(content={"Message": _(u"student is found")}, status=200) 

一旦你有標記您的所有翻譯的文本完成後,它的時間來生成源翻譯文件(.po),使用實際翻譯編輯它們,最後生成編譯好的翻譯文件(.mo),如文檔所述。