File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -5,3 +5,4 @@ fastapi==0.111.1
55psycopg2
66SQLAlchemy == 2.0.31
77sqlmodel == 0.0.20
8+ urllib
Original file line number Diff line number Diff line change 11import os
22import typing
33from datetime import datetime
4-
4+ from urllib . parse import quote_plus
55from sqlmodel import Field , SQLModel , create_engine
66
77sql_url = ""
88if os .getenv ("AZURE_POSTGRESQL_CONNECTIONSTRING" ):
9- sql_url = os .getenv ("AZURE_POSTGRESQL_CONNECTIONSTRING" )
9+ env_connection_string = os .getenv ("AZURE_POSTGRESQL_CONNECTIONSTRING" )
10+
11+ # Parse the connection string
12+ details = dict (item .split ('=' ) for item in env_connection_string .split ())
13+
14+ # Properly format the URL for SQLAlchemy
15+ sql_url = (
16+ f"postgresql://{ quote_plus (details ['user' ])} :{ quote_plus (details ['password' ])} "
17+ f"@{ details ['host' ]} :{ details ['port' ]} /{ details ['dbname' ]} ?sslmode={ details ['sslmode' ]} "
18+ )
19+
1020else :
1121 POSTGRES_USERNAME = os .environ .get ("DBUSER" )
1222 POSTGRES_PASSWORD = os .environ .get ("DBPASS" )
Original file line number Diff line number Diff line change @@ -5,3 +5,4 @@ fastapi==0.111.1
55psycopg2
66SQLAlchemy == 2.0.31
77sqlmodel == 0.0.20
8+ urllib
You can’t perform that action at this time.
0 commit comments