2

我有以下型号

类监视器数据(模型。模型):
  [... 其他的东西]
  starttime = models.CharField(max_length=64, db_column='spurlStartTime', blank=True)

所以,starttime 是一个 char 字段(在数据库中,它代表一个 datetime 列)

现在,这就是我正在做的事情:

oo=models.MonitorData.objects.all()
打印 oo[0].starttime
打印类型(oo[0].starttime)

这就是我得到的:

00:35:59
<类型'日期时间.时间'>

出于我自己的原因(不想讨论它们),我想将其作为 varchar 读取,然后自己解析。但是 django 不允许我这样做,因为出于我不知道的原因,它会将其转换为日期时间!

任何人都可以向我解释为什么 django 有这种行为,我怎样才能找回我宝贵的字符串?有没有办法强制 django 将此值转换为字符串?

ps:我知道如何使用 str() 所以请不要回答我

4

2 回答 2

4

Django 没有对它做任何事情。DBAPI 适配器看到它是一个 DATETIME,因此返回一个日期时间。并且没有任何东西CharField可以强制日期时间发送文本。

于 2012-05-10T16:43:24.797 回答
0

我认为,而不是以日期时间格式保存值。尝试将其保存为 isoformat。您可以轻松转换。

于 2017-11-27T10:51:33.873 回答