+-
(psycopg2.ProgrammingError)不能适应类型 "Arrow"。

我有一个日期解析的python箭头库。

和 sqlalchimy 过滤器

query.filter(EventFlight.departure_datetime <= arrow.get(params["date_to"]))

祸害

 sqlalchemy.exc.ProgrammingError: (psycopg2.ProgrammingError) can't adapt type 'Arrow'

如何解决这个问题?

0
投票

有两种方法可以解决这个问题

1) 在你的模型定义中,将日期类从 sqlalchemy_utils 改为 ArrowType。

from sqlalchemy_utils import ArrowType

class EventFlight():
   ...
   departure_datetime = Column(ArrowType(timezone=True))

2) 将箭头转换为日期时间

query.filter(EventFlight.departure_datetime <= arrow.get(params["date_to"])).datetime)