Ergebnis 1 bis 6 von 6

Thema: innerhalb eines fields.field.save Callbacks testen, ob Datensatz neu ist...

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

    Standard innerhalb eines fields.field.save Callbacks testen, ob Datensatz neu ist...

    Hallo in die Runde?

    Ist es möglich (ich habe leider nichts spezifisches dazu gefunden) innerhalb eines fields.field.save - Callbacks zu testen, ob der gerade zu speichernde Datensatz neu hinzugefügt oder geupdatet wird?

    Viele Grüße.
    Theo

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.114
    Partner-ID
    10107

    Standard

    Hm, vielleicht über $dc->activeRecord->tstamp. Bin mir da jetzt aber auch nicht sicher, was best practise ist.

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

    Standard

    ja - cool - Danke! Das scheint zu gehen, ist jedoch etwas "untypisch". Gibts vielleicht noch sowas wie $dc->activeRecord->isNew?

  4. #4
    Alter Contao-Hase
    Registriert seit
    18.07.2012.
    Ort
    Löbau
    Beiträge
    1.140

    Standard

    Was hast du genau vor?

    Also soll da noch mehr passieren?
    Liebe Grüße
    WebRoxx


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

    Standard

    ich möchte abhängig davon, ob es sich um einen neu angelegten oder einen bereits bestehenden Datensatz handelt, bestimmte Daten im Feld zulassen oder zurückweisen. Aber es scheint so, als ginge es auf die von Spooky vorgeschlagene Weise!

    Ich kannte das zwar bisher so nicht, wie es in Contao hier realisiert ist, da in einem echten ORM Wrapper (wie beispielsweise active record von Rails) die Speicher oder Update-Prozesse über das Model abgewickelt werden und man dort (symbolisch) fragen kann Model.isNewRecord? und man dann erkennt, ob der Datensatz jetzt gerade mit einem Insert hinzugefügt, oder mit einem Update aktualisiert wird. Dazu müsste der Callback eine Signatur wie save_callback(Model: myModel) haben.

    Contao macht das scheinbar etwas anders. Es schreibt zuerst einen leeren Datensatz und updated ihn danach. Wird der Prozess abgebrochen, dann löscht Contao den Datensatz wieder. Das wusste ich bisher nicht. Das ist soweit ok, wenngleich etwas "unsauber", da ein häufiges Anlegen und Abbrechen die id hoch zählt, ohne das Datensätze geschrieben wurden. Aber das ist Jammern auf hohem Niveau.

    Es funktioniert mit dem Tipp von Spooky!

    Viele Grüße
    Theo

  6. #6
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.114
    Partner-ID
    10107

    Standard

    Ja, dieser Teil von Contao ist leider schon sehr alt

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
  •