2016-04-05 7 views
0

geçiyor:Tarih tip I aşağıdakilere sahip dilimini

class Atom(Base): 
    __tablename__ = 'atom' 

    id    = Column(Integer, primary_key=True) 
    date    = Column(Date, nullable=False, doc="date on which delivery occurred")` 

Gönderdiğim sql bakıyorum ve tarih 'tarih' için bkz: datetime.datetime(2016, 3, 1, 0, 0, tzinfo=tzutc())

yüzden 2016 geçerken -03-01 ve db bakın 2016-02-29

Bir tarih türü için tzinfo ekleyerek sqlachemy'ı nasıl durdurabilirim?

+1

Eğer bir tarih sütunu ise, neden bir 'datetime' var? – univerio

cevap

0

çözüm olacaktır:

date = Column(DateTime(timezone=False), 
       nullable=False, 
       doc="date on which delivery occurred" 
     ) 

göre SQLAlchemy Changelog bu şekilde saat dilimini geçiş yapabilirsiniz:

DateTime ve Zaman türlerine “saat dilimi = True” bayrağını ekledi. postgres bugüne kadar adresine dönüştürürüz | psycopg2 tarihsaat karşı karışıklığı oluşturabilir tzinfo yıllardan varsa ile tarihsaat döndürür (saat dilimi varlığı üzerinde kontrol daha kontrol edilebilmekte, böylece, “TIME [STAMP] TIME ZONE (İLE OLMADAN)” diye) yok.

Başka bir seçenek, belirli bir saat dilimini ayarlamaktır, here açıklanmıştır.