从命令行管理命令运行时,Django 日期本地化似乎不起作用

标签 django command-line localization

我有一个使用 {{date|date:"l j F"}} 的模板本地化日期。当我在 View 中使用它时,它工作正常(来自 ./manage.py runserver 或 uwsgi.

但是,当我使用此模板从命令行使用 management/commands 命令发送电子邮件时,它会回退到 en_US 语言环境。 (星期五而不是 Vrijdag 等)

我已包含 settings.LANGUAGE_CODE , settings.USE_L10Nsettings.USE_I18N在模板中以确保正在使用哪个语言环境,然后在两种情况下都显示 nl_NL,正如预期的那样。

有想法该怎么解决这个吗?

最佳答案

事实证明,必须在管理命令中手动激活翻译:

from django.utils import translation

translation.activate(settings.LANGUAGE_CODE)

成功了。见 https://code.djangoproject.com/ticket/10078

关于从命令行管理命令运行时,Django 日期本地化似乎不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9778624/

相关文章:

python - 配置不当 : Error loading MySQLdb module pycharm

python - rawsql 相当于 django 查询集

ruby-on-rails - 如何从命令行停止 Rails 服务器?

asp.net-mvc-3 - 在 Asp.net MVC 中实现 XML 本地化的最佳方法?

c++ - gettext - 加载本地目录

django - 在Filter中添加动态初始值

python - 从 DateTimeField 迁移到 DateField

java - 如何在 java 中打开 .txt 的应用程序(无论操作系统如何)?

bash - find -mtime 超过 1 小时的文件

ios - 应用商店本地化描述未正确显示