Daten externer Datenbank und View Module
am 21.05.2013 - 11:12 Uhr in
Hallo zusammen,
Ich hoffe ich bin hier richtig, obwohl meine Frage nicht so ganz eine Anf$ngerfrage ist, ich mich jedoch als Anfänger im Umgang mit Drupal bezeichne.
Ich möchte euch kurz versuchen mein Problem zu schildern:
Ich möchte Daten einer bzw. mehrerer Tabellen einer externen Datenbank anzeigen, bearbeiten und löschen können.
Dazu habe ich schon zum einen ein Modul geschrieben, in welchem ich mir eine Tabelle erstelle, zuvor natürlich die relevanten Daten aus der externen DB hole (switch databases extern / default). Die Tabelle habe ich mit Hilfe der theme Funktion erstellt.
Das funktioniert soweit auch gut, unter anderem klappt auch das sorting über die header der einzelnen spalten.
Zum anderen habe ich mittlerweile aber das gleiche auch mit views und dem cTool geschafft zu erstellen.
Mein Problem ist jedoch, wie die beste Vorgehensweise ist, wenn ich Daten aus einer externen Datenbank in einer Liste darstellen möchte (später vielleicht auch noch in einer anderen Form), einzelne Reihen bearbeiten und löschen möchte.
Könnt ihr mir hierzu einen Tipp geben?
Ist es wirklich nötig, ein eigenes Modul zu schreiben, so wie ich bisher vorgegangen bin, oder zb. besser über das bereits existierende Module wie Views zu gehen?
Ich habe bereits in einem externen Link gelesen, das, sofern man Views in Verbindung mit einer externen Datenbank verwendet, Drupal "mitteilen muss" wie die Datenstruktur aussieht.
Das habe ich in einem *.inc file des entsprechenden Modules getan und so funktioniert auch die Anzeige der Tabelle. Weiter funktioniert auch, das ich über die Administration einstellen kann, ob und welche Spalten sortierbar sein sollen.
Hier komme ich nun nicht weiter, wie ich im Modul funktionen für das editieren und löschen schreibe, so das drupal automatisch erkennt, das diese editierbar sind.
Versteht ihr was ich meine? :)
Viele Grüsse und schonmal Danke
thenouse
- Anmelden oder Registrieren um Kommentare zu schreiben

Dazu solltest du dir
am 21.05.2013 - 11:41 Uhr
Dazu solltest du dir vielleicht mal https://drupal.org/project/data ansehen.
Data
am 21.05.2013 - 12:25 Uhr
Hallo Roger,
vielen Dank für den Link. èber das Module Data bin ich auch schonmal gestolpert.
Was mir jedoch nicht ganz klar ist, ist wie ich die externen Daten mit Drupal verknüpfe.
Das Problem ist, das die Daten dauerhaft extern gespeichert sind, diese auch durch eine andere Applikation geändert werden können (z.b durch eine App oder ähnliches)
Ich dachte bisher, wenn ich Daten mit Drupal verwalten will, das der einfachste Weg sei, extra Tabellen in Drupal anzulegen, die dann (mit Drupal und Nodes) verwaltet werden können.
Dies ist in diesem speziellen Fall ja aber nicht möglich. Ich werde mir das Modul mal genauer anschauen und melde mich dann noch einmal.
Vielen Dank dir, für die schnelle Antwort.
Viele Grüsse
thenouse
Du kannst mit dem Modul die
am 21.05.2013 - 12:33 Uhr
Du kannst mit dem Modul die Tabellen anlegen und dann über das Modul Feeds auch regelmäßig aktualisieren lassen. Ein Zwei-Wege-Synchsonisation wird dann allerdings schon komplizierter.
Nur für das Verständnis... Du
am 21.05.2013 - 12:40 Uhr
Nur für das Verständnis...
Du meinst damit, das ich dann die Daten aus der externen Datenbank in Drupal importiere und anderst herum "den schwierigen part" die Daten auch wieder mit der externen Datenbank abgleiche.
Sofern also über eine externe Schnittstelle etwas verändert wird, müssen diese Daten in die Drupal Datenbank importiert und in umgekehrter Richtung, wenn ich über Drupal etwas an den Daten ändere / neue hinzufüge, diese der externen Datenbank mitteilen und updaten...
Das Modul Data und Schema habe ich mir gerade schon angeschaut. Feeds werde ich mir auch anschauen.
Das Problem bei der ganzen Sache ist jedoch, das so zwei Datenbanken genutzt werden müssen, welche die gleichen Tabellen enthalten. Der Unterschied wäre dann nur, das die einen Tabellen direkt in Drupal integriert sind und die anderen der externen Datenbank eben nicht.
Gibt es keine Möglichkeit, das ich die Daten der externen DB aufliste und einzelne Einträge bearbeiten / löschen kann?
Lies dir mal noch diesen
am 21.05.2013 - 12:51 Uhr
Lies dir mal noch diesen Issue durch. Da steht einiges drin, wie du auch auf externe Datenbanken zugreifen kannst, indem du sie in der settings.php einträgst. https://drupal.org/node/864184
Hi Roger,das Zugreifen auf
am 21.05.2013 - 13:03 Uhr
Hi Roger,
das Zugreifen auf externe Datenbanken funktioniert soweit schon.
Ich dachte nur es gäbe schon einen einfacheren Weg um mit externen Daten(banken) umzugehen (so das Drupal automatisch edit, delete funktionalität bereitstellt).
Aber um ein eigenes Modul zu schreiben komme ich dabei wohl nicht herum. Ist aber auch in Ordnung, somit lernt man wieder allerhand Dinge.
Bisher ist mein Modul auch soweit, das ich die externen Daten in einer Tabelle anzeigen lassen und über die Header sortieren kann,
Weiter kann man diese auch bearbeiten und löschen. Ebenso gibt es weitere Funktionen wie zb. eine Rehie in der Tabelle zu "disablen".
Wie gesagt, dachte ich nur es gibt vielleicht einfachere Wege, wie Diesen, um nicht mehr Aufwand betreiben zu müssen wie nötig. Deshalb hatte ich hier nach Ideen und Lösungsansätzen gefragt.
[Nachtrag]: Sehe ich es richtig, das es bisher gute Möglichkeiten gibt, externe Daten in Drupal zu importieren und anzuzeigen, jedoch die erweiterte Variante, Daten von extern aufzurufen, anzuzeigen, diese zu bearbeiten und wieder zurück in den externe Datenbank zu schreiben, nochkein Modul bisher fähig ist dies zu lösen?
Vielen Dank nochmal.