我正在尝试通过遵循精彩的Django文档来国际化Django应用程序。问题是当我尝试运行命令来创建语言文件时:
python manage.py makemessages -l fr
输出错误:
CommandError: Can't find msguniq. Make sure you have GNU gettext tools 0.15 or newer installed.
我的配置:
答案 0 :(得分:25)
使用终端
安装带有Homebrew的gettext GNU工具/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install gettext
brew link gettext --force
答案 1 :(得分:5)
如果您尝试运行link gettext --force
,它会向您发出警告:
请注意,这样做会影响构建软件。
最安全的使用方法是在路径中添加gettext二进制文件:
export PATH="/usr/local/opt/gettext/bin:$PATH"
答案 2 :(得分:1)
对于 Windows:
下载gettext并安装
添加系统变量路径:C:\Program Files\gettext-iconv\bin
(如果您在安装过程中没有添加)
在您的项目目录中检查或创建 locale/
检查或添加settings.py:LOCALE_PATHS = (BASE_DIR + 'locale/', )
享受django-admin makemessages -l fr
。如果仍然重复,请不要忘记重新启动 shell 以更新环境变量
答案 3 :(得分:1)
首先在根项目文件夹中创建名为 locale 的目录,然后运行
sudo apt install gettext