我有一个字符串time= "10:00AM"
我使用strptime
将其转换为日期时间格式
time = datetime.strptime(time, '%I:%M%p')
这是我的models.py
time = models.DateTimeField(null=True,blank=True)
它在数据库中显示:
1900-01-01 11:00:00+00:00
这是正常的吗?
如果我想在网站上显示,我怎么能显示11:00? 请教我,谢谢
我试着这不行
import time
test = '1900-01-01 11:00:00+00:00'
print (time.strftime(test,"%H:%M:%S"))
答案 0 :(得分:0)
是的,这是正常的,DateTimeField存储日期和时间。在您的情况下,1900-01-01
是您不提供的默认日期。如果您需要存储的只是一天中的时间(没有特定日期),只需使用TimeField。
至于显示:
这两个都会输出11:00 AM
:在你的模板中
{{ time_value:time "h:i A" }}
:在python中打印
print my_model.time.strftime('%I:%M %p')
答案 1 :(得分:0)
您可以使用datetime.combine(date,time)
:
>>> from datetime import datetime
>>> time = "10:00AM"
>>> time = datetime.strptime(time, '%I:%M%p')
>>> datetime.combine(datetime.today(), time.time())
datetime.datetime(2014, 11, 13, 10, 0)
11am
意味着什么并不存在混淆。11am
提到另一天。