Files
dog_training/helpers/helper_db_mysql.py
2025-06-21 17:51:07 +01:00

42 lines
1.1 KiB
Python

"""
Project: PARTS Website
Author: Edward Middleton-Smith
Precision And Research Technology Systems Limited
Technology: Helpers
Feature: MySQL Database Helper
Notes: This architecture does not work with Flask-SQLAlchemy - db connection must be initialised with Flask app initialisation
"""
# internal
# external
from pydantic import BaseModel, ConfigDict
from flask import Flask, render_template, jsonify, request, render_template_string, send_from_directory, redirect, url_for, session
from flask_sqlalchemy import SQLAlchemy
import uuid
class Helper_DB_MySQL(BaseModel):
app: Flask
model_config = ConfigDict(arbitrary_types_allowed=True)
def __init__(self, app):
super().__init__(app=app)
# self.app = app
def get_db_connection(self):
db = SQLAlchemy()
db.init_app(self.app)
with self.app.app_context():
db.create_all()
db.engine.url = self.app.config['SQLALCHEMY_DATABASE_URI']
return db
@staticmethod
def create_guid_str():
return str(uuid.uuid4())
@staticmethod
def create_guid():
return uuid.uuid4().bytes