You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
26 lines
995 B
Python
26 lines
995 B
Python
from sqlalchemy import create_engine
|
|
from sqlalchemy.ext.declarative import declarative_base
|
|
from sqlalchemy.orm import sessionmaker
|
|
import pytz
|
|
from sqlalchemy import DateTime, TypeDecorator
|
|
|
|
class DateTimeTZ(TypeDecorator):
|
|
impl = DateTime
|
|
|
|
def process_result_value(self, value, dialect):
|
|
if value is None:
|
|
return None
|
|
return value.replace(tzinfo=pytz.utc)
|
|
|
|
DATABASE_URL = 'mssql+pyodbc://rop:OptimalTransition@production-rop-prices.cyqrsg0mmelh.eu-central-1.rds.amazonaws.com:1433/prices?driver=ODBC+Driver+17+for+SQL+Server'
|
|
# DATABASE_URL = 'mssql+pyodbc://rop:OptimalTransition@rop-prices-dev-20230123.cyqrsg0mmelh.eu-central-1.rds.amazonaws.com:1433/test?driver=ODBC+Driver+17+for+SQL+Server'
|
|
# DATABASE_URL = Config().SQLALCHEMY_DATABASE_URI
|
|
BASE = declarative_base()
|
|
ENGINE_PRICES = create_engine(
|
|
DATABASE_URL,
|
|
pool_size=2000,
|
|
max_overflow=0,
|
|
connect_args={"options": "-c timezone=utc"},
|
|
)
|
|
SESSION = sessionmaker(bind=ENGINE_PRICES)
|