Python Django defaultfilters.date不支持时区
我正在尝试为django admin list_显示创建一个定义,但是日期筛选器不支持时区。如果我只是在列表中显示Python Django defaultfilters.date不支持时区,python,django,datetime,django-filter,django-timezone,Python,Django,Datetime,Django Filter,Django Timezone,我正在尝试为django admin list_显示创建一个定义,但是日期筛选器不支持时区。如果我只是在列表中显示updated\u date字段,则时间是正确的 def get_edited_by(self): return u"%s %s - %s" % (self.edited_by.first_name, self.edited_by.last_name, defaultfilters.date(self.updated_date, 'SHORT_DATET
updated\u date
字段,则时间是正确的
def get_edited_by(self):
return u"%s %s - %s" % (self.edited_by.first_name, self.edited_by.last_name,
defaultfilters.date(self.updated_date, 'SHORT_DATETIME_FORMAT'))
输出为:Bob Bobson-26.02.2014 18:27
(休息一小时)
仅更新日期的输出为:26。2014年2月19:27(正确)
有人知道如何使defaultfilters.date
时区感知吗
编辑:
我的设置:
TIME_ZONE = 'Europe/Oslo'
USE_I18N = True
USE_L10N = True
USE_TZ = True
编辑2:
pytz==2013.9
Django==1.6.2
编辑3:
试过这个
from django.utils.dateformat import DateFormat
def get_edited_by(self):
return u"%s %s - %s" % (self.edited_by.first_name, self.edited_by.last_name, DateFormat.format(self.updated_date, "SHORT_DATETIME_FORMAT"))
但是我得到了这个错误:unbound method format()必须以DateFormat实例作为第一个参数调用(取而代之的是datetime实例)
编辑4:
给出此输出:Bob Bobsen-th23+0100RCET_onsPMCETFebruarCET0FebFebruar\u februar+0100RFebpCet
已设置?是,更新了设置问题是否已安装pytz?是,已安装pytz。如果禁用时区支持,会发生什么情况?我知道这是违反直觉的,但我自己在我的一个项目中遇到了很多麻烦,结果证明不使用它就是答案
from django.utils import date format
def get_edited_by(self):
return u"%s %s - %s" % (self.edited_by.first_name, self.edited_by.last_name, dateformat.format(self.updated_date, 'SHORT_DATETIME_FORMAT'))