【问题标题】:Django tables2 displays time as am/pm instead of 24H standardDjango tables2 将时间显示为上午/下午而不是 24 小时标准
【发布时间】:2017-05-10 08:22:16
【问题描述】:

我目前正在使用 Django 开发一个网站,其中来自 MySQL 数据库的数据使用 Django-Tables2 显示。问题是数据库中的所有 TIME 字段都转换为 am/pm 而不是 24 小时,因为标准应该来自我收集的内容。我见过很多人有相反的问题,但这些解决方案都没有奏效。在谷歌搜索并尝试了将近一周后,我没有向社区询问。

有没有办法强制 Django 中 TimeFormat 字段的时间标准对应于与 MySQL TIME 相同的格式(无限/24 小时)?

这将非常有帮助,因为我目前正在显示时间间隔,并且应该是 25 分钟的 00:25 显示为 12:25 pm。

class LoggTable(TableReport):
    glider = tables.Column(accessor = 'glider.glider_id')
    towing = tables.Column(accessor = 'towing.towing_id')
    glider_pilot = tables.Column(accessor = 'glider_pilot.pilot_id')
    towing_pilot = tables.Column(accessor = 'towing_pilot.pilot_id')

    class Meta :
        model = FlightData
        exclude = ('max_height')
        attrs = {'class': 'paleblue'}

【问题讨论】:

  • 您是否使用时间字段来表示时间间隔?那不是他们的目的。请改用整数。
  • 我使用 TIME 数据类型在 MySQL 中存储一个时间间隔,这就是为什么,然后由 django-tables2 显示,但格式错误stackoverflow.com/questions/4498513/… 如何使用整数时、分、秒分开?
  • 你为什么使用TIME?您提供的答案专门说“使用INT”,节省了您的时间间隔内的秒数。
  • 我使用时间是因为所需的最大时间间隔大约是 12 小时,而 Django 将时间显示为上午/下午而不是 24 小时的另一个问题是开始/结束时间字段是显示为上午/下午,应用程序应显示为 24 小时时间
  • 这不是理由。它不适用于间隔,所以不要使用它!

标签: python mysql django django-tables2


【解决方案1】:

我们解决了这个问题,包括

TIME_FORMAT = 'H:i'

在我们的 settings.py 文件中,我们之前尝试过类似的不同解决方案,但直到现在才找到。我们还设置了

USE_L10N = False

【讨论】:

    猜你喜欢
    • 2012-01-10
    • 1970-01-01
    • 1970-01-01
    • 2015-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-12
    • 2014-06-21
    相关资源
    最近更新 更多