Ankündigung

Einklappen
Keine Ankündigung bisher.

Sortierfilter nach ID (Aktualität)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Sortierfilter nach ID (Aktualität)

    Wir benötigen einen Filter nach der Aktualität eines erstellten Eintrags.
    tstamp speichert ja jede Änderung und ist dafür deshalb nicht geeignet.

    In Frage kommt die ID, die sich ja nicht mehr ändert.
    Diese wird aber im Sortierfilter nicht mit angeboten.
    Noch besser wäre allerdings ein eindeutiges Datum (Erstellungsdatum), dass sich ebenfalls nicht mehr ändert.
    Wäre es nicht sinnvoll, dieses Feld generell bei der Erstellung eines Datensatzes anzulegen?
    Falls nein, wie könnte dieses nachträglich automatisch angelegt werden?

    Nachtrag.
    So habe ich es mal versucht, aber da kommt nüscht an:

    PHP-Code:
    $GLOBALS['TL_DCA']['cc_test']['fields']['date_create']['save_callback'][] = array('dateCreate','myLoadCallback');

    if( !
    class_exists('dateCreate') )
    {
    class 
    dateCreate
    {
    public function 
    myLoadCallback($createValue$objDC)
    {
    if( empty(
    $createValue) )
    {
    $createValue time(); // Zeitstempel beim Speichern)
    }
    return 
    $createValue;

    }
    }

    Nochmal ich ;-)

    Funktioniert doch mit dem Callback...
    war nur ein kleiner Fähler drin...

    Aber sowas als Standart würde mir dennoch gut gefallen. Am besten unveränderbar im Backend.
    Zuletzt geändert von eblick; 06.03.2022, 16:19.

  • #2
    Das ist eine gute Lösung.
    http://www.premium-contao-themes.com

    Kommentar


    • #3
      Zitat von Tim Beitrag anzeigen
      Das ist eine gute Lösung.
      Danke
      Ich finde, das gehört in jeden CC

      Kommentar


      • #4
        Zitat von eblick Beitrag anzeigen

        Danke
        Ich finde, das gehört in jeden CC
        Das braucht es nicht und wirft nur Fragen auf, wie man ggf. so einen Wert zurücksetzen könnte. Für eine Sortierung ist es meines Erachtens auch eher weniger geeignet, weil man den Wert dann ebenfalls zugänglicher machen müsste. -> Dann tut es auch ein normales Datumsfeld.
        http://www.premium-contao-themes.com

        Kommentar


        • #5
          Nun ja, wir haben hier mehrere Anzeigen- und Produktkataloge (Immobilien, Autos, Möbel usw). Das wird doch sicher auch bei anderen Nutzern der Fall sein. Hier sind sowohl die Sortierung als aber auch das Flag „neu“ oder das Alter einer Anzeige hilfreich.
          Nachträgliches Ändern ist für ein DateCreate eher nicht üblich.
          Es wäre im Grunde wie das tstamp Feld zu behandeln, außer dass es sich nicht mehr ändert.

          Kommentar


          • #6
            Wenn ich aus CC-Sicht ein Feld für Interaktionen wie Sortierungen bereitstellt, dann muss es nachträglich änderbar sein. Innerhalb eines Projektes kann es projektbezogen aufgebaut werden. Dann hat man freie Hand. Ein "Geburtsdatums"-Feld kann ich nur absolut strikt setzen. -> nie änderbar (ausser direkt in der DB).

            Meines Erachtens ist die gegebene Lösung schön simpel und schnell adaptierter auf weitere Tabellen (nur den DCA kopieren), wenn man eine solche Funktion benötigt.
            http://www.premium-contao-themes.com

            Kommentar


            • #7
              Update: Für eine kommende Hauptversion sehe ich ein kleines neues Attribut vor: Nennen wir es mal "Statischer Feldwert" oder so. Das Attribut hat keine Ausgabe im Bearbeiten-Modus. Es dient ausschließlich der Feldbelegung. -> Das ist der Hauptunterschied zu einem normalen Textfeld.
              Als Standwert kann man Inserttags nutzen wie {{date::U}}, um einen aktuellen Timestamp zu setzen. Als Optionen wird es geben: Wertupdate bei Speicherung oder ähnlich. Da bin ich noch nicht ganz sicher.

              Damit kann ein "date_create" Feld jederzeit ergänzt werden, ohne dass die Kerntabellenstruktur geändert wird.
              http://www.premium-contao-themes.com

              Kommentar

              Lädt...
              X