如何让Django管理员了解时区



我在数据库中存储了日期时间信息作为UTC。我使用Django管理来显示这些信息。

有没有一种方法可以在Django管理中显示最终用户当前时区的日期时间信息?

通常我认为这方面的逻辑应该在模板/视图层,然而,Django管理员对你隐藏了这一切,似乎我必须覆盖许多隐藏的文件(我不想这样做)。

一个想法是在模型中对DateTimeField进行子类化,并使其在您从数据库中获取它时将其转换为本地时区,尽管我不确定这是否可行。

有人有什么建议吗?谢谢

Django 1.4将引入时区支持,但管理员仍然不会使用它。关于"祝福"哪个时区实现(pytz),每个用户的时区存储在哪里(没有内置的架构迁移验证。如果不强制每个Django用户同步他们的数据库,用户基本上就无法接触到),而且还没有时区选择的UI。

所以零件在那里,但在这个阶段仍然是自己动手做的,对不起。

请参阅我在django开发人员上开始的线程http://groups.google.com/group/django-developers/browse_thread/thread/1386a2bf73babc6a

在即将发布的Django 1.4中提供了本地化时区支持。

如果您知道要使用哪个时区,那么有一些技术可以使管理员中的数据输入和显示使用该时区。查看博客文章https://www.caktusgroup.com/blog/2014/01/09/managing-events-explicit-time-zones/

在我的情况下,所有的管理员用户都在服务器的时区内,所以我能够使用这种方法让管理员使用该时区。请注意,这是在每个字段的基础上完成的,而不是全局的,但是,我不知道如何获得使用相对于该时区的日期的date_hierarchy。

相关内容

  • 没有找到相关文章

最新更新