翻译项目目录应用程序外的字符串(ej.django rest框架)

翻译项目目录应用程序外的字符串(ej.django rest框架),django,Django,假设我在项目中安装了djangorestframeworkapp。此应用程序有许多可翻译字符串(如果不是全部的话,大多数字符串都用于API错误)。DRF版本为3+,而Django==1.7 生成翻译后的消息(使用makemessages)时,我使用以下命令: python ./manage.py makemessages -l es 我得到了生成的.po文件,但是rest\u framework(Django rest framework库的应用程序包)没有任何翻译文件。通过这种方式,我强制它

假设我在项目中安装了
djangorestframework
app。此应用程序有许多可翻译字符串(如果不是全部的话,大多数字符串都用于API错误)。DRF版本为3+,而Django==1.7

生成翻译后的消息(使用makemessages)时,我使用以下命令:

python ./manage.py makemessages -l es
我得到了生成的.po文件,但是
rest\u framework
(Django rest framework库的应用程序包)没有任何翻译文件。通过这种方式,我强制它使用以下方法生成要翻译的字符串:

  • 在我的项目目录中创建一个到
    rest\u框架
    package/目录的符号链接
  • python./manage.py makemessages-l es--symlinks
  • 删除符号链接。django rest框架中的可翻译字符串现在包含在我的django.po文件中
但这种方法对我来说很难看

如果不手动添加这些字符串,也不使用我使用的方法,我如何将这些字符串添加到django.po文件中?

因为DRF有流行语言的翻译,包括ES

如果您的目标语言不在列表中,我建议您将其翻译成DRF

更新:
Django在当前工作文件夹(
)下搜索翻译字符串。据我所知,符号链接(您的解决方案)是让
makemessages
访问项目外部的第三方软件包的唯一方法。也许您可以建议Django团队实施一项功能,该功能允许
makemessages
通过
已安装的应用程序进行搜索

注意,这是3.1.Cool中引入的新功能!没有检查3.1版本:D。但是其他潜在的第三方库呢?(即,如果DRF不是这种情况,而是另一组库)。请允许我投票支持3.1和i18n改进:)@LuisMasuelli,据我所知,对于第三方来说,没有比您更好的解决方案。在我的回答中添加了一些更新