|
- from Config import db, uri
- from sqlalchemy.orm import sessionmaker, scoped_session
- import sqlalchemy, datetime
-
- class SQL:
- def __init__(self):
- self.engine = sqlalchemy.create_engine(uri)
- self.Session = scoped_session(sessionmaker(bind=self.engine))
- pass
-
- def query(self, query, params):
- session = self.Session()
- result = session.execute(query, params).fetchall()
- ret = []
- for row in result:
- ret.append(dict(row))
-
- return ret
-
-
- def str_to_date(str, format="%Y-%m-%d %H:%M:%S"):
- example = datetime.datetime(2021, 6, 2, 9, 39)
- if str == None:
- return False
-
- if type(str) == type(example):
- return str
-
- return datetime.datetime.strptime(str, format)
-
- def dict_is_xor(_dict, keys):
- exists = False
- for key in keys:
- if key in _dict and exists == False:
- exists = key
- continue
- if key in _dict and exists != False:
- return False
-
- return exists
-
- def crud_routes(request, instance):
- method = request.method
- if method == "POST":
- return instance.create(request)
- elif method == "GET":
- return instance.read(request)
- elif method == "PUT":
- return instance.update(request)
- elif method == "DELETE":
- return instance.delete(request)
|