Django mit externen Datenbanken verknüpfen?
Verfasst: Mittwoch 15. November 2017, 14:24
Hallo,
ich stehe in der Konzeptphase zu einem größeren Projekt mit Django im Klinsch. Soweit ich verstanden habe, macht Django vieles automatisch. So elementare Dinge wie Objekte ansehen/anlegen/ändern/löschen vor allem.
Dies aber nur unter der Voraussetzung, dass auch die substanziellen Daten, womit ich die Daten meine, die ihrer Funktion nach mehr mit dem Projekt als solches als mit Django zu tun haben (das nicht mehr sein soll als die "Steuereinheit", "Admin-Konsole"), dennoch von Django verwaltet werden müssen. Mir ist aber die Abhängigkeit von Django in punkto Datenhaltung nicht geheuer, und würde ganz gerne das soweit wie möglich und praktikabel getrennt halten. Ein Teil der Funktionen soll mittels REST anderen Parteien der Gesamtstruktur zur Verfügung gestellt werden. Das ORM für die substanziellen Daten, also soweit ich es überblicke allen Daten außer zum Beispiel die Nutzer der Webplattform, soll etwa SQLAlchemy sein, das von Django ja nicht direkt unterstützt wird. SQLAlchemy macht mir einen robusteren Eindruck, z.B. wenn es um zusammengesetzte Primärschlüssel geht. Lt. dem Django-Projekt wird das ja sogar noch gar nicht unterstützt, klappt halt mehr schlecht als recht nur mit irgendwelchen Hacks von SO.
Ist nun mein Verständnis richtig, dass das zwar geht, dass ich über SQLAlchemy eine zusätzliche Datenbank verknüpfen kann, ich aber all die tollen Django-Automatismen, die Views die Django out of the box für mit Django verwaltete Entitäten mitliefert, noch mal selbst machen muss?
Es gibt ja tolle Django-Erweiterungen, etwa aldjemy. Aldjemy ist aber doch eigentlich nur ein Adapter für SQLAlchemy, um die Entitäten, die man unter Django-Regie gestellt hat, halt mit den flexibleren Abfragemöglichkeiten von SQLAlchemy zu verknüpfen. Ich brauche glaube ich die Umkehrung davom: Ich will ein SQLAlchemy-Model mit den Standardautomatismen von Django verwaltbar machen.
Für Tipps wäre ich dankbar!
getridofmyphone.
ich stehe in der Konzeptphase zu einem größeren Projekt mit Django im Klinsch. Soweit ich verstanden habe, macht Django vieles automatisch. So elementare Dinge wie Objekte ansehen/anlegen/ändern/löschen vor allem.
Dies aber nur unter der Voraussetzung, dass auch die substanziellen Daten, womit ich die Daten meine, die ihrer Funktion nach mehr mit dem Projekt als solches als mit Django zu tun haben (das nicht mehr sein soll als die "Steuereinheit", "Admin-Konsole"), dennoch von Django verwaltet werden müssen. Mir ist aber die Abhängigkeit von Django in punkto Datenhaltung nicht geheuer, und würde ganz gerne das soweit wie möglich und praktikabel getrennt halten. Ein Teil der Funktionen soll mittels REST anderen Parteien der Gesamtstruktur zur Verfügung gestellt werden. Das ORM für die substanziellen Daten, also soweit ich es überblicke allen Daten außer zum Beispiel die Nutzer der Webplattform, soll etwa SQLAlchemy sein, das von Django ja nicht direkt unterstützt wird. SQLAlchemy macht mir einen robusteren Eindruck, z.B. wenn es um zusammengesetzte Primärschlüssel geht. Lt. dem Django-Projekt wird das ja sogar noch gar nicht unterstützt, klappt halt mehr schlecht als recht nur mit irgendwelchen Hacks von SO.
Ist nun mein Verständnis richtig, dass das zwar geht, dass ich über SQLAlchemy eine zusätzliche Datenbank verknüpfen kann, ich aber all die tollen Django-Automatismen, die Views die Django out of the box für mit Django verwaltete Entitäten mitliefert, noch mal selbst machen muss?
Es gibt ja tolle Django-Erweiterungen, etwa aldjemy. Aldjemy ist aber doch eigentlich nur ein Adapter für SQLAlchemy, um die Entitäten, die man unter Django-Regie gestellt hat, halt mit den flexibleren Abfragemöglichkeiten von SQLAlchemy zu verknüpfen. Ich brauche glaube ich die Umkehrung davom: Ich will ein SQLAlchemy-Model mit den Standardautomatismen von Django verwaltbar machen.
Für Tipps wäre ich dankbar!

getridofmyphone.