例如,如果用户总是可以运行manage.py compilemessages
,为什么“django-cms”的作者将 gettext 的 mo 文件保留在 repo 中(这不仅仅是疏忽,请参阅
此提交)?只是为了让用户免于这一步并使安装过程变得更容易吗?
还有很多其他示例:django-filer甚至django本身!
谢谢!
通常您不会将生成的文件保留在存储库中,这是不对的。
但有时您的应用程序会按原样安装,例如来自 pypi。在这种情况下,用户将不会运行编译消息,并且将预编译的 .mo 文件保留在发行版中是有意义的
很久以前就对此进行过公开讨论https://code.djangoproject.com/ticket/23321
我的 2 美分:它承认这在 Django 生态系统中是一种不好的做法,但不解决这个问题的理由可以简化为“gettext 依赖项可能很难实现或在某些平台(主要是 Windows)上表现异常,因此开发开发版本的人们可能会在本地化设置时遇到困难。”
恕我直言,这很奇怪,但这应该回答你的“有什么好处”的问题。