如何使用Django的內置makemessages
工具在我的項目文件夾之外收集翻譯字符串?管理命令makemessages
非常方便,我想將它用於站點包中的應用程序。Django使用站點包中的應用程序makemessages
回答
除了makemessages我發現PyBabel非常有用。這是一個綁定到Django本身:http://babel.edgewall.org/wiki/BabelDjango
使用符號鏈接(ln -s),但它不是很方便。通常,如果應用程序在PYTHONPATH上,不應該通過makemessages來抓住翻譯文件夾?
現在我* *使用符號鏈接,但這是一個醜陋的解決方法。它在* makemessages.py *中被硬編碼以查找當前工作目錄中的文件,它跳過PYTHONPATH。 – 2010-11-04 13:09:41
當使用符號鏈接時,請記得將'--symlinks'選項添加到['makemessages'](https://docs.djangoproject.com/en/dev/ref/django-admin/#django-admin-makemessages) – guival 2017-09-27 10:20:31
(1)激活安裝了Django的虛擬環境。
(2)要生成消息的應用程序轉到目錄:
$ cd path/to/app/in/site/packages/
(3)確保它的「語言環境」目錄。如果沒有 - 製作一個。
$ mkdir locale
(4)從您的應用程序目錄中運行以下命令:
$ django-admin.py makemessages -l [LANGUAGE_CODE]
舉例荷蘭:
$ django-admin.py makemessages -l nl
俄羅斯舉例:
$ django-admin.py makemessages -l ru
我不確定這是OP所要求的,這是否收集項目外*字符串?據我所知,這將只收集來自項目或應用程序內的html,txt和py文件的字符串。 – guival 2017-09-27 10:19:27
是的,它確實從你正在運行的包中收集字符串。這就是爲什麼我們有''cd path/to/app/in/site/packages /''。 – 2017-09-27 13:47:40
- 1. 在Django管理站點中未顯示的應用程序
- 2. 在virtualenv中安裝的應用程序的makemessages
- 3. 刪除Django的網站應用程序
- 4. 在Django 1.9中包含應用程序
- 5. Django的makemessages問題
- 6. 從可重複使用的包中複製Django應用程序
- 7. 'TemplateDoesNotExist'爲Django應用程序創建站點地圖的錯誤
- 8. 使用不同版本的Django運行WSGI應用程序以安裝在python站點包中?
- 9. 如何打包django應用程序並通過點可用?
- 10. 如何使用網站包打包web2py應用程序
- 11. 有關makemessages的Django錯誤應該從Django Git樹或您的項目或應用程序樹運行「
- 12. 不能在django應用程序中使用anaconda包
- 13. 基於應用程序的Rails站點
- 14. 在Django應用程序中使用nltk
- 15. 在django應用程序中使用ajax
- 16. django-admin.py makemessages失敗
- 17. Django:在客戶端站點打開應用程序
- 18. 在我的Django站點中使用HTTPS
- 19. django中的網站應用程序用於什麼?
- 20. Django包和應用程序名稱
- 21. 使用Django模型的應用程序需要是Django應用程序嗎?
- 22. 使用多個應用程序的缺點django
- 23. 如何使用pycharm調試/斷點我的django應用程序?
- 24. 使用站點的API構建應用程序
- 25. django-admin makemessages =>翻譯我的所有django軟件包
- 26. 移動應用程序下載站點
- 27. iphone html應用程序 - 跨站點xmlhttprequest?
- 28. 同ASP.Net應用程序 - 多IIS站點
- 29. 在應用程序包中使用Dylib
- 30. Django網站 - 使按鈕鏈接到不同的應用程序
謝謝,它就像一個魅力。 – 2010-11-16 15:41:04