2016-04-05 9 views
0

を渡している。日付タイプIは、以下のいるタイムゾーン

class Atom(Base): 
    __tablename__ = 'atom' 

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

私が送信されるSQLを見て、私は日付の次を参照してください '日付':datetime.datetime(2016, 3, 1, 0, 0, tzinfo=tzutc())

ので、私は2016年に合格-03-01とdbを参照してください。私は2016-02-29を参照してください。

Date型のtzinfoを追加するのを止めるにはどうしたらいいですか?

+1

日付列の場合、なぜあなたは 'datetime'を持っていますか? – univerio

答えて

0

ソリューションは、次のようになります。

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

SQLAlchemy Changelogあなたは、このように時間帯を切り替えることができますによると:

は、DateTimeおよびTimeタイプに「タイムゾーン=真」のフラグを追加しました。これまではこれを "タイムスタンプ(WITH | WITHOUT)TIME ZONE"に変換しますので、 タイムゾーンの存在をより詳細に制御できるようになりました(psycopg2はtzinfoの利用可能な場合は datetimesを返すため、 しないでください)。

別のオプションは、hereで説明されている特定のタイムゾーンを設定することです。

関連する問題