возможно ли переопределить поведение type.DateTime по умолчанию при использовании sqlalchemy с необработанными выражениями sql?
, например, при использовании
myconnection.execute(text("select * from mytable where mydate > :mydate), {'mydate': mypythondatetimeobject)}
, я быхотелось бы, чтобы type.DateTime автоматически удалял TimeZone из объекта DateTime.
ОБНОВЛЕНИЕ: я обнаружил, что он работает с использованием bindparam и Typedecorator в запросе следующим образом:
class MyType(types.TypeDecorator):
impl = types.DateTime
def process_bind_param(self, value, dialect):
if value is not None:
return value.replace(tzinfo=None)
session.execute(
text(myquery, bindparams=[bindparam('mydateparam',
type_=MyType())]),
{'mydateparam':mydate}
)
но я действительно не хочу использовать «bindparams» для каждого запроса.Разве нельзя просто заменить или переопределить типы по умолчанию. Поведение даты как-то?