通過摸索和查閱django官網文檔,我今天已經解決windows上執行django-admin.py makemessages -l zh_CN 后出現'xgettext'不是內部或外部命令,也不是可運行的程序或批處理文件的錯誤
原因和解決辦法是:
分析django的源代碼中關于國際化方面的(makemessages)就知道,上述命令最終調用的是os.cmd之類調用命令行的東西,而
windows的path路徑列表中沒有xgettext.exe,這是因為windows上沒有gettext,所以要安裝
gettext(python有gettext,但是好像不行,它沒有xgettext)
下載地址是:http://sourceforge.net/projects/gettext
下載這三個:
gettext-runtime-X.bin.woe32.zip
gettext-tools-X.bin.woe32.zip
libiconv-X.bin.woe32.zip
解壓這3個zip文件到同一個文件夾,比如 C:"Program Files"gettext-utils
然后添加到系統變量的PATH中:
控制面板 > 系統 > 高級 > 環境變量
在系統變量列表中, 選中Path, 然后單擊編輯
添加 ;C:"Program Files"gettext-utils"bin 到結尾后一直點確定就行了
那3個文件全部選中后,直接用winrar解壓,選擇一個目錄后解壓即可