Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 92ac030

Browse files
JOS-06 - conecctions file updated
1 parent 3191454 commit 92ac030

File tree

2 files changed

+19
-6
lines changed

2 files changed

+19
-6
lines changed

‎app.py‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
from routes.task_routes import task_routes
33
import logging
44
from database.conecctions import SingletonConnection
5-
from models.task_model import Task, Base
5+
from models.task_model import Base
66

77
app = Flask(__name__)
88
app.register_blueprint(task_routes, url_prefix='/tasks')
@@ -12,5 +12,6 @@
1212
engine = db.get_engine()
1313

1414
Base.metadata.create_all(bind=engine)
15+
1516
if __name__ == '__main__':
16-
app.run(debug=True, port=3001)
17+
app.run(debug=True, port=3001)

‎database/conecctions.py‎

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,33 @@
11
from sqlalchemy import create_engine
22
from config.credentials import credentials
33
import logging
4+
from sqlalchemy.orm import sessionmaker
5+
6+
47
class SingletonConnection:
58
_instance = None
9+
610
def __init__(self) -> None:
711
self.logger = logging.getLogger(__name__)
812

913
def __new__(cls):
1014
if not cls._instance:
11-
engine = create_engine("mysql+pymysql://"+str(credentials['user'])+":"+str(credentials['password'])+"@"+str(credentials['host'])+":3306/"+str(credentials["database"]))
1215
cls._instance = super().__new__(cls)
13-
cls._instance.engine=engine
16+
cls._instance._initialize_engine()
1417
return cls._instance
1518

19+
def _initialize_engine(self):
20+
self.logger = logging.getLogger(__name__)
21+
self.engine = create_engine(
22+
f"mysql+pymysql://{credentials['user']}:{credentials['password']}@{credentials['host']}:3306/{credentials['database']}")
23+
Session = sessionmaker(bind=self.engine)
24+
self.session = Session()
1625

1726
def get_engine(self):
1827
try:
19-
return self.engine
28+
return self.engine
2029
except Exception as error:
21-
self.logger.error("connection error -", str(error))
30+
self.logger.error("connection error -", str(error))
31+
32+
def get_session(self):
33+
return self.session

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /