canaille-globuzma/canaille/backends/sql/utils.py
Éloi Rivard 27639081f0
feat: implement sqlalchemy backend
Co-authored-by: Loan Robert <loan@yaal.coop>
2023-11-24 13:57:46 +01:00

19 lines
512 B
Python

import datetime
from sqlalchemy import DateTime
from sqlalchemy import TypeDecorator
class TZDateTime(TypeDecorator):
impl = DateTime
cache_ok = True
def process_bind_param(self, value, dialect):
if value is not None:
value = value.astimezone(datetime.timezone.utc).replace(tzinfo=None)
return value
def process_result_value(self, value, dialect):
if value is not None:
value = value.replace(tzinfo=datetime.timezone.utc)
return value