您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

51 行
1.3 KiB

  1. from Config import db, uri
  2. from sqlalchemy.orm import sessionmaker, scoped_session
  3. import sqlalchemy, datetime
  4. class SQL:
  5. def __init__(self):
  6. self.engine = sqlalchemy.create_engine(uri)
  7. self.Session = scoped_session(sessionmaker(bind=self.engine))
  8. pass
  9. def query(self, query, params):
  10. session = self.Session()
  11. result = session.execute(query, params).fetchall()
  12. ret = []
  13. for row in result:
  14. ret.append(dict(row))
  15. return ret
  16. def str_to_date(str, format="%Y-%m-%d %H:%M:%S"):
  17. example = datetime.datetime(2021, 6, 2, 9, 39)
  18. if str == None:
  19. return False
  20. if type(str) == type(example):
  21. return str
  22. return datetime.datetime.strptime(str, format)
  23. def dict_is_xor(_dict, keys):
  24. exists = False
  25. for key in keys:
  26. if key in _dict and exists == False:
  27. exists = key
  28. continue
  29. if key in _dict and exists != False:
  30. return False
  31. return exists
  32. def crud_routes(request, instance):
  33. method = request.method
  34. if method == "POST":
  35. return instance.create(request)
  36. elif method == "GET":
  37. return instance.read(request)
  38. elif method == "PUT":
  39. return instance.update(request)
  40. elif method == "DELETE":
  41. return instance.delete(request)