Skip to content

Commit 88bfdd5

Browse files
Create db connection string from settings
1 parent 7131a9d commit 88bfdd5

File tree

2 files changed

+16
-1
lines changed

2 files changed

+16
-1
lines changed

data_layer/engine.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
from sqlalchemy import create_engine
22
from sqlalchemy.orm import sessionmaker
3+
from settings.settings import Settings
34

45

56
class Engine:
@@ -11,7 +12,15 @@ def __new__(cls, *args, **kwargs):
1112
return cls.__instance
1213

1314
def __init__(self):
14-
self.engine = create_engine('sqlite:///db.sqlite3', echo=True)
15+
self.engine = create_engine(self._create_connection_string(), echo=True)
1516
print(self.engine)
1617

1718
self.session = sessionmaker(bind=self.engine)()
19+
20+
def _create_connection_string(self):
21+
settings = Settings()
22+
connection_string = ""
23+
if settings.db_engine == "sqlite":
24+
connection_string = f"{settings.db_engine}:///{settings.db_database_name}"
25+
print("connection_string:", connection_string)
26+
return connection_string

settings/settings.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,12 @@ def db_engine(self):
2525
return self.database.get("engine")
2626
return None
2727

28+
@property
29+
def db_database_name(self):
30+
if self.database:
31+
return self.database.get("database_name")
32+
return None
33+
2834
@property
2935
def md_width(self):
3036
if self.main_display:

0 commit comments

Comments
 (0)