Django Admin DateTimeField显示24小时格式时间

时间:2018-01-30 05:06:32

标签: python django python-2.7 django-models time-format

我试过谷歌,但我没有找到解决方案。在Django管理员方面,我随时间显示开始日期结束日期。但时间是24 hr格式,我希望以12 hr格式

显示
class CompanyEvent(models.Model):
    title = models.CharField(max_length=255)
    date_start = models.DateTimeField('Start Date')
    date_end = models.DateTimeField('End Date')
    notes = models.CharField(max_length=255)

    class Meta:
        verbose_name = u'Company Event'
        verbose_name_plural = u'Company Events'

    def __unicode__(self):
        return "%s (%s : %s)" % (self.title, self.date_start.strftime('%m/%d/%Y'), self.date_end)

我也发现this,但它没有帮助我。

我是pythondjango的新手。请帮忙。

Screen Shot

3 个答案:

答案 0 :(得分:12)

这是django设置的问题,而不是模型: settings doc

检查TIME_INPUT_FORMATS = [ '%I:%M:%S %p', # 6:22:44 PM '%I:%M %p', # 6:22 PM '%I %p', # 6 PM '%H:%M:%S', # '14:30:59' '%H:%M:%S.%f', # '14:30:59.000200' '%H:%M', # '14:30' ] 中的LANGUAGE_CODE并根据需要添加:

USE_L10N

如果更改列表页面上的时间格式显示仍然错误,请检查您的function run(){ $this->createDBRow(), $this->getimagesdata() $this->uploadImage() $this->updateServerDB() } switch ("ENUM_ACTION"){ case:"create_db_row" $this->createDBRow(), $this->getimagesdata() $this->uploadImage() $this->updateServerDB() case:"get_images" $this->getimagesdata() $this->uploadImage() $this->updateServerDB() case: "upload_images" $this->uploadImage() $this->updateServerDB() } 设置。

答案 1 :(得分:6)

看一下Django docs你将会知道格式如何 这个

'%Y-%m-%d %H:%M:%S'

其中%H 是小时,24小时格式带前导零,以12小时格式替换为%h

所以你必须使用 - '%Y-%m-%d%h:%M:%S'

答案 2 :(得分:3)

默认情况下,django显示24小时格式,如果要自定义,则需要指定12小时格式。如果有效,请告诉我

class CompanyEvent(models.Model):
title = models.CharField(max_length=255)
date_start = models.DateTimeField('Start Date')
date_end = models.DateTimeField('End Date')
notes = models.CharField(max_length=255)

class Meta:
    verbose_name = u'Company Event'
    verbose_name_plural = u'Company Events'

def __unicode__(self):
    return "%s (%s : %s)" % (self.title, self.date_start.strftime('%m/%d/%Y %I:%M %p'), self.date_end)