135 Nachrichten unter 47 Themen von 48 Mitgliedern
[SilverStripe Roadmap][Changelog]

Eingaben vor Speicherung bearbeiten / externe Datenbank

Seite: 1 562 mal gelesen
  • geist
    Community Member
    14 Beiträge

    Eingaben vor Speicherung bearbeiten / externe Datenbank

    Folgende Aufgabenstellung:

    Ich möchte eine Eingabe auf einer neu erstellten Seite vor Speicherung mit den Daten einer externen Datenbank (MySQL) abgleichen.

    Beispiel:

    Silverstripe:

    public static $db = array(
    'EventDate' => 'Date',
    'EventName' => 'Text',
    'EventID' => 'Int',
    );

    $fields->addFieldToTab("Root.Content.Main", new TextField('EventDate','Datum:'));
    $fields->addFieldToTab("Root.Content.Main", new TextField('EventName','Text:'));

    Externe Datenbank:

    'eventDate' => 'Date',
    'eventName' => 'Text',
    'eventID' => 'Int',

    Nun soll folgendes passieren: Bevor die Daten in Silverstripe gespeichert werden, soll in der externen Datenbank nachgesehen werden, ob zu SilverStripe.EventDate ein extern.eventDate und zu SilverStripe.EventName ein extern.eventName existiert. Wenn nicht, dann soll beides in der externen Datenbank angelegt werden und die extern.eventID in SilverStripe.EventID eingetragen werden.

    Hat jemand etwas ähnliches schon gemacht? Oder eine Idee, ob und wie das möglich ist?

    Für Hilfe dankbar

    geist
  • geist
    Community Member
    14 Beiträge

    Re: Eingaben vor Speicherung bearbeiten / externe Datenbank

    Manchmal ist die Lösung so einfach... wenn man lesen kann...

    Silverstripe hält ja die wunderschönen Methoden onBeforeWrite() und onBeforeDelete() bereit, mit denen sich Eingaben im Backend spielend bearbeiten lassen.

    Das nur, falls mal jemand auf diesen Eintrag stößt und sich hiermit nicht ärgern muß, daß er zwar auf die Frage, nicht aber auf die Lösung gestoßen ist.

Zur Zeit online: Zur Zeit ist leider niemand online.

Wir begrüßen unsere neuen Mitglieder: saerdna