forked from Github-Mirrors/canaille
20 lines
512 B
Python
20 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
|