Ergebnis 1 bis 6 von 6

Thema: Wo ansetzen, wenn man mit den eingebauten models auf eine externe db zugreifen möchte

  1. #1
    Contao-Nutzer
    Registriert seit
    13.07.2013.
    Ort
    Nordsachsen
    Beiträge
    130

    Standard Wo ansetzen, wenn man mit den eingebauten models auf eine externe db zugreifen möchte

    Hallo allseits und guten Abend!

    Ich möchte meine definierten models nutzen und die Anfragen lediglich an eine remote mysql-db senden - und nicht an die lokale db. Wo kann ich dazu ein Beispiel sehen oder wo kann ich ansetzen?
    Ist es möglich, zwischen lokaler db und remoter db irgendwie trickreich umzuschalten? Dabei sollen nur bestimmte (von mir präparierte) models die remode db abfragen.

    Ich würde mich über ein paar Tipps oder Meinungen freuen.
    Vielleicht hat jmd. schon einmal soetwas ähnliches gemacht?

    Herzliche Grüße.
    Theo

  2. #2
    Contao-Urgestein Avatar von Samson1964
    Registriert seit
    05.11.2012.
    Ort
    Berlin
    Beiträge
    2.794

    Standard

    Hast Du schon erfolgreich die externe DB einbinden können? Normalerweise sind die Datenbanken bei den meisten Hostern für externe Zugriffe gesperrt.

    Gesendet von meinem L52 mit Tapatalk
    Viele Grüße
    Frank

    Seit Mai 2013 Fan von Contao
    Webmaster vom Deutschen Schachbund und Berliner Schachverband
    Mein Blog: Schachbulle
    Meine Erweiterungen bei GitHub
    Meine Videos auf YouTube: Playlist zur Contao-Programmierung/Einrichtung

  3. #3
    Contao-Nutzer
    Registriert seit
    13.07.2013.
    Ort
    Nordsachsen
    Beiträge
    130

    Standard

    Hallo Samson1964!

    Ja das geht. Auf die herkömmliche Weise mit mysqli_connect() kann ich die Daten holen, allerdings muss ich dazu meinen Code umschreiben. Ich hätte lieber etwas, das "sauberer" arbeitet. Die abstrakte core-Klasse library\Contao\Database bietet, wie ich gesehen habe, die Möglichkeit, ein eigenes Konfigurations-Array mitzugeben...

    PHP-Code:
    /**
    * Instantiate the Database object (Factory)
    *
    * @param array $arrCustom A configuration array
    *
    * @return \Database The Database object
    */
    public static function getInstance(array $arrCustom=null)
    {
    ...

    Aber ich weiss jetzt noch nicht, wie und wann genau ich diese Factory aufrufen kann...

  4. #4
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.051
    User beschenken
    Wunschliste

    Standard

    Hi,

    hier wurde das Thema bereits schon mal besprochen (~20 Sekunden bei Nutzung der Boardsuche)

    https://community.contao.org/de/show...ank-mit-Models


    Hier wurde sowohl geklärt wie man eine externe DB Verbindung aufbaut als auch, dass es nicht möglich ist, über Models zu arbeiten (zumindest war das damals der Stand).
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

  5. #5
    Contao-Nutzer
    Registriert seit
    13.07.2013.
    Ort
    Nordsachsen
    Beiträge
    130

    Standard

    OK Danke @the_scrat,

    das ist ok, ich werde aber bei genügend Zeit das Problem nochmal genauer schauen müssen. Möglw. kann man die Models umbiegen, dass sie die alternative DB nutzen???

    Ein Hinweis auf Boardsuche kommt eher nicht so gut an. Ich habe gesucht externe db, remote db, externe mysql, externe verbindung mit models etc. brachte alles keine Treffer! Wenn man natürlich den thread kennt und die passenden Stichworte, dann kennt man ihn

    Aber dennoch, vielen Dank!

  6. #6
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.051
    User beschenken
    Wunschliste

    Standard

    Hi,

    der Hinweis auf die Boardsuche war berechtigt. "Externe Datenbank" und schon hättest du das Ergebnis gehabt.

    Wenn es dir gelingt das Model so umzubiegen, dass ein externer und interne Zugriff klappt, dann kannst du das ja auf Github weitergeben. Die Funktion wäre nämlich wirklich cool.
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •