Django Date过滤器的意思是'Naive'?

时间:2015-05-18 11:21:28

标签: python django date django-template-filters

我想在Django日期过滤器中使用'c'日期格式。那种格式引用了“天真”的日期。我不希望在我的模板中有时区(在我的xml中的其他位置)。

我不确定那是什么,django的文档没有提及它,它引用的PHP site也没有。

它是什么,我该如何摆脱它?

1 个答案:

答案 0 :(得分:2)

文档引用了这些available types的python日期。

  

类型为time或datetime的对象可能是天真的或有意识的。一个datetime   对象d知道d.tzinfo是否为非且d.tzinfo.utcoffset(d)   不会返回None。如果d.tzinfoNone,或d.tzinfo不是None   但是d.tzinfo.utcoffset(d)返回None d 是天真的。 time对象 t 是   知道t.tzinfo不是Nonet.tzinfo.utcoffset(None)不是None   返回import datetime import pytz unaware = datetime.datetime(2011, 8, 15, 8, 15, 12, 0) aware = datetime.datetime(2011, 8, 15, 8, 15, 12, 0, pytz.UTC) now_aware = pytz.utc.localize(unaware) assert aware == now_aware 。否则, t 是天真的。

天真就意味着它没有任何时区信息。

为了让某些人“注意”,请按method:{/ p>跟随此unutbu

  

一般情况下,为了使天真的日期时间可识别,请使用localize method

localize
     

对于UTC时区,没有必要使用now_aware = unaware.replace(tzinfo=pytz.UTC)   因为没有夏令时计算来处理:

.replace
     

的工作原理。 (unaware返回一个新的日期时间;它不会修改   None。)

要使其无意识,请将时区设置为declare @table table (Itemid Int,Vendorname varchar(10),VendorPrice DECIMAL(18,2)) insert into @table (Itemid,Vendorname,VendorPrice) values (122,'HP',125.66), (122,'Apple',130.44), (122,'microsoft',134.00), (122,'IBM',124.90) Select Itemid,[HP] As HPPrice , [Apple] As ApplePrice, [microsoft] As microsoftPrice, [IBM] As IBMPrice from ( select Itemid,Vendorname,VendorPrice from @table)A PIVOT(MAX(VendorPrice) FOR Vendorname IN ([HP],[Apple],[microsoft],[IBM]))P