Един подход би бил да се използва creator аргумент на create_engine()
:
Просто променете своя make_sqlalchemy_string() за създаване на dsn аргумент за psycopg2.connect()
, което може да означава, че изобщо не се налага да го променяте поради приетия формати на низове за връзка
и предайте създателя:
create_engine('postgresql://', creator=lambda: psycopg2.connect(make_dsn_string()))