Anbindung externe Datenbank MongoDB
am 16.01.2023 - 12:00 Uhr in
Hallo, ich möchte mehrere Datenbanken an Drupal anbinden. Soweit so gut, die 1. Datenbank ist Postgres, das funktioniert ohne Probleme.
Die 2. Datenbank ist eine MongoDB. Der Mongo-PHP-Treiber ist installiert, die Mongo-DB läuft erfolgreich lokal. In der DB gibt es testweise eine collection namens songs und einen Datensatz mit einer ID.
Ich habe in der settings.php folgenden Eintrag hinzugefügt:
// In sites/default/settings.local.php.
$settings['mongodb'] = [
'clients' => [
// Client alias => connection constructor parameters.
'default' => [
'uri' => 'mongodb://localhost:27017',
'uriOptions' => [],
'driverOptions' => [],
],
],
'databases' => [
// Database alias => [ client_alias, database_name ]
'default' => ['default', 'drupal'],
'keyvalue' => ['default', 'keyvalue'],
'logger' => ['default', 'logger'],
],
];
Klicke ich nun in Drupal unter Struktur / Ansichten / Ansichten hinzufügen auf Inhalt müsste ich laut meiner Anleitung Felder von der Mongo-DB sehen, da passiert aber nichts? Wer kann mir weiterhelfen?
Vielen Dank..
- Anmelden oder Registrieren um Kommentare zu schreiben
Um auf Datenbanken
am 16.01.2023 - 12:21 Uhr
Um auf Datenbanken zuzugreifen benutzt Drupal eine eigene API. Darin muß es einen Treiber für das Ansprechen des jeweiligen Datenbank-Typs geben. Das Vorhandensein der passenden PHP-Erweiterung ist dazu nicht ausreichend.
Es gibt aber, wie ich gerade gefunden habe, ein Drupal-Modul dazu (MongoDB). Damit sollte es möglich sein Deine Mogodb in der settings.php entsprechend einzutragen.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
vielenDank
am 18.01.2023 - 17:13 Uhr
Hallo, damit konnte ich die MongoDB erfolgreich anbinden. Noch eine Anfängerfrage: wie frage ich nun einzelne Werte aus der Datenbank ab? Aktuell enthält sie nur ein Feld namens ID zu Übungszwecken, später jedoch sollen Felder aus einer Datenbank mit Originalen und dazugehörigen Coverversionen angezeigt werden?
Da die Datenbank keine Drupal
am 18.01.2023 - 17:39 Uhr
Da die Datenbank keine Drupal Entities oder Konfigurationselemente beinhaltet, kannst Du das Nur über ein eigenes Modul, daß die Daten per PHP-Code aus der Datenbank abruft und dann an andere Routinen weiterreicht. Die können die Werte dann auch ausgeben. Wenn Die Ausgabe über das Drupal-Theme erfolgen soll, muß Du die Daten aber erst entsprechend aufbereiten.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Beispiel
am 25.01.2023 - 14:48 Uhr
Hallo,
gibt es Beispielseiten oder Anleitungen, wie ich einzelne Datenbankfelder von der MongoDB angebunden bekomme?
Vielen Dank
beyondles