我遇到了一个问题,因为我正在从sqlite迁移到Oracle后端。在我的模板中,我使用内置的SHORT_DATE_FORMAT
过滤器。使用sqlite,日期显示正确(例如,2012年9月21日)。作为后端移至Oracle,日期始终显示在数据库中日期的前一天(例如,2012年9月20日)。 Oracle数据显示21-SEP-12 12.00.00.000000 AM作为数据库中的值。我的模板显示如下数据:
<td>{{ ec.effective_date|date:"SHORT_DATE_FORMAT" }}</td>
我是针对Oracle 11运行的。这是一个Django错误吗?如果是这样,我该如何举报?感谢。
答案 0 :(得分:0)
如果其他人遇到此问题,则会发生这种情况,因为我使用的是DateTimeField模型字段。在Oracle中,这转换为时间戳,我猜Django将其转换为前一天。将我的模型字段更改为DateField,syncdb,现在所有内容都显示正确的日期,而Oracle使用的是Date列类型,而不是时间戳。