habe die Frage bei DB eingeordnet, falls Sie in der falschen Kategorie ist, bitte verschieben.

Ich versuche einen HTTP Server mit WebAPI für eine Angular Anwendung zu erstellen. Ich habe schon ein wenig was gemacht, habe aber das Gefühl, dass ich mich ganz schön (mit der Struktur) verzettelt habe. Ich verwende Flask, SQLite und SqlAlchemy.
Die Idee war folgende: Main startet den HTTP Server (Klasse in HTTPServer-Package definiert). In der Klasse des HTTP Servers werden die Hooks aus den anderen Packages eingebunden.
Dabei ist die Struktur für die Datenbank-Packages immer so aufgebaut:
Sql_accounts steht die Definition für SQLAlchemy und die Funktionen zum bearbeiten der Datenbank.
In der Sql_accounts_hooks stehen die "Routes" für den Webserver. Ich lasse in der Sql_accounts file eine engine erstelle und bei jedem Verbindungsaufbau erzeuge ich eine neue Session um die DB Aktionen durchzuführen. Analog dazu habe ich auch das Datenbank Package aufgebaut.
Dies mache ich so, weil ich mit Flask Threaded=True fahre.
Ist das der richtige weg für die SQLAlchemy Parts? Gibt es klügere Wege, wie man die Objekte mit SQLAlchemy-Beteiligung gestaltet?
Ich hab da doch Probleme bei initialisieren. Wie baut man normalerweise eine Struktur auf, um auf mehrere Datenbanken (bei mir sind es nur 2) zuzugreifen?
Beste Grüße
homerunjack
Mein Aufbau:
Main.py
System.ini (Pfade der Datenbanken)
--> Datenbank Package (Datenbankanbindung für Daten)
-----> __init__
-----> datenbank_connector.py (SQLAlchemy: Engine erstellen und Session-Generator)
-----> sql_tabelle1.py (Tabellendefinition SQLAlchemy und Funktionen zum erzeugen, bearbeiten, löschen von Einträgen, holt/erzeugt Verbindung von datenbank_connector)
-----> sql_tabelle1_hooks.py (WebApi Routes mit Verwendung von sql_accounts.py)
-----> …weitere T
--> Accounts Package (Datenbankanbindung für Accounts)
----> __init__
----> datenbank_connector.py (SQLAlchemy: Engine erstellen und Session-Generator)
----> sql_accounts.py (Tabellendefinition SQLAlchemy und Funktionen zum erzeugen, bearbeiten, löschen von Einträgen)
----> sql_accounts_hook.py (WebApi Routes mit Verwendung von sql_accounts.py)
--> HttpServer
----> __init__
----> webserver.py (Klasse mit Server und Verwendung der Hooks)
--> DATASTORE
----> ACCOUNTS
------> accounts.db
----> DATEN
------> db1.db
------> db2.db
------> …