python manage.py compilemessages
从locale/en/LC_MESSAGES/django.mo
等翻译源文件名创建名为locale/en/LC_MESSAGES/django.po
的已编译翻译文件。
我希望git忽略*.mo
个文件而不将其提交到存储库,因为它们不是源文件。
Heroku已经知道要执行
python manage.py collectstatic
对于django项目。
如何让它也执行compile messages
?
目前我通过将编译结果文件(*.mo
)添加到我的存储库来解决此问题,但我想知道是否有更好的方法。
(如果相关 - 我网站的回购:https://github.com/yairchu/vote_tool)
答案 0 :(得分:2)
bin/post_compile
./manage.py compilemessages
行git push origin
git push heroku
当您将分支推送到Heroku时,它现在应该运行该命令。我不确定自定义bin/post_compile
文件是否会覆盖Heroku所做的自动检测,因此如果您发现它已不再运行collectstatic
,只需在compilemessages
下方弹出该行即可行,但将--noinput
添加到该行,以便管理命令不会提示您键入“是”以确认您要覆盖现有文件。