Ankündigung

Einklappen
Keine Ankündigung bisher.

Felder unter Meine Inhaltselemente hinzufügen, nachdem Daten eingepflegt sind

Einklappen
Dieses Thema ist geschlossen.
X
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Felder unter Meine Inhaltselemente hinzufügen, nachdem Daten eingepflegt sind

    Hallo,

    ich habe über den Elementtyp "Pricelist" Daten im Backend eingepflegt.

    Anschließend habe ich unter "Meine Inhaltselemente > Pricelist" ein neues Feld 'Hyperlink' in der Gruppe Content hinzugefügt.
    (Typ: Hyperlink)

    Das funktioniert, wenn ich ein neues Element Pricelist in einem Artikel hinzufüge.

    Beim vorhandenen Element, wo schon vorher Daten eingepflegt waren, hagelt es plötzlich Warnmeldungen (Frontend und Backend):
    Warning: Illegal string offset 'alias' in system/modules/pct_customelements/PCT/CustomElements/Widgets/WidgetCustomElement.php on line 552
    Warning: Illegal string offset 'uuids' in system/modules/pct_customelements/PCT/CustomElements/Core/Vault.php on line 398

    Wenn ich dann abspeichere, dann ist nur noch 1 Datensatz vorhanden.

    Es sieht so aus, als ob das Hinzufügen eines neuen Feldes Probleme macht, wenn bereits Daten eingepflegt sind.
    Ist das tatsächlich so oder muss man irgendetwas besonderes beachten, wenn man neue Felder hinzufügt?
    Kann ich das zusätzliche Feld irgendwie hinzufügen, ohne dass ich alle Daten erneut einpflegen muss?

    Viele Grüße

  • #2
    Welche CE Version fährst du hier?
    Grundsätzlich ist das Hinzufügen jederzeit möglich.
    http://www.premium-contao-themes.com

    Kommentar


    • #3
      Meine Inhaltselemente: Version 2.0.2

      2 Sachen sind mir noch eingefallen:
      1) Ich hatte zwischendurch den Titel (nicht den Alias) des Inhaltselements verändert
      2) Es wird eine umbenannte Kopie des customelement_pricelist-Templates verwendet

      Ich weiß nicht, ob diese 2 Punkte mit den Problemen zusammenhängen könnten.

      Kommentar


      • #4
        Noch ein Nachtrag:
        Auch die Variante "zuerst das Element anpassen und danach Daten einpflegen" funktioniert nicht richtig:
        Nachdem ich ca 70 Datensätze eingetragen hatte (zwischendurch hatte ich gespeichert), hatte ich plötzlich den
        Effekt, dass nur noch der erste Eintrag vorhanden war.

        Wenn ich über die Contao-Versionierung auf einen vorherigen Stand zurückswitche, dann sind da
        alle Einträge da, aber die Felder sind plötzlich alle leer, obwohl diese beim Einpflegen/Zwischenspeichern immer angezeigt worden sind.

        Warnmeldungen/ Fehler werden keine angezeigt.

        Kommentar


        • #5
          70 Duplikate/ Einträge in einem CE? ich bin mir sicher, da macht eher der Server heimlich still und leise vorher schlapp.

          Einen Alias gibt es in CEs nicht.

          Die Versionierung kam erst mit CE 2.0. Die kann für ältere Datensätze nicht rückwirkend angewendet werden, erst wenn diese unter 2.0 abgespeichert wurden.
          Zuletzt geändert von Tim; 19.10.2016, 10:57.
          http://www.premium-contao-themes.com

          Kommentar


          • #6
            70 Einträge zB in einer Linkliste sind von der Datenmenge her nicht viel. Die Verarbeitung durch den Server ging schnell, es war einfach fehlerhaft.
            Wieviele Einträge darf man denn maximal in einem CustomElement anlegen?
            Ich muss ja unseren Kunden etwas erzählen, wo die "Belastbarkeitsgrenze" der CustomElements liegt.


            Wegen Alias: siehe Screenshot

            Die Datensätze waren unter 2.0 abgespeichert worden, aber das ist nicht so sehr das Problem.

            Kommentar


            • #7
              Achso, der Alias des CE selbst. Den darf man nicht ändern, sonst wird es ein komplett neues Inhaltselement.

              Ok, bei einer Linkliste mag das noch gehen. 70 Bilddaten sähe bereits anders auch. Ich kann dir kein Oberlimit sagen, das hängt zu sehr von den Attributen ab, der Anzahl der Attribute und natürlich dann noch den Faktor Gruppen und Duplizierte Gruppen.

              Die zuverarbeitende Masse selbst ist einfache Mathematik. Jedes Duplikat entspricht Faktor += 1 . 10 Attribute in einer Gruppe, die 70x dupliziert ist = 70 Attribute, die beim Speichern berücksichtigt werden (auch validiert werden müssen) müssen, damit hier allein auch bereits 70 POST Variablen usw. usw.
              ---

              CE denkt bei Attributen nicht mit dem Alias, sondern mit einer sogn. Unique-ID (uuid). Damit sind spätere Alias-Änderungen ohne Datenverlust möglich. Darum heisst das Feld hier auch "Lesbarer Alias".
              Diese uuid wird einmalig beim Speichern gesetzt. Löscht Du aber das Attribut und erstellst ein neues, auch gleichen Alias, ist es für CE ein komplett neues Feld. Vergleichbar mit der ID des Feldes. Diese ist dann auch neu. Das entspricht einem Datenverlust der vorherigen Daten des ehemaligen Feldes.
              Zuletzt geändert von Tim; 19.10.2016, 11:25.
              http://www.premium-contao-themes.com

              Kommentar


              • #8
                ok. Eine Idee noch: wie werden diese Felder gespeichert? In Contao ist es ja oft so, dass Arrays serialisiert werden und dann in der Datenbank gespeichert werden.
                Ist das hier auch so? Das wäre dann evtl. eine Erklärung, wenn das Feld in der Datenbank nämlich eine Größenbeschränkung hat.
                (ich konnte ja so um die 60 Datensätze bearbeiten, bei ca 70 Datensätzen gab es Probleme)

                Kommentar


                • #9
                  Es ist ein blob in tl_pct_customelement_vault.data
                  Der error.log würde max size exceeded (oder so) schreiben.
                  http://www.premium-contao-themes.com

                  Kommentar


                  • #10
                    Hallo Tim
                    Bei mir spinnt das Pricelist element auch. Sobald ich mehr als 20 Einträge einfüge, wird "Inhaltselement ist leer" angezeigt (Screenshot anbei). Weisst du, woran das liegen könnte?

                    Kommentar


                    • #11
                      Zitat von janineiten Beitrag anzeigen
                      Hallo Tim
                      Bei mir spinnt das Pricelist element auch. Sobald ich mehr als 20 Einträge einfüge, wird "Inhaltselement ist leer" angezeigt (Screenshot anbei). Weisst du, woran das liegen könnte?
                      Server oder DB-Feld ist am Limit und kann keine weiteren Daten mehr speichern.
                      https://forum.premium-contao-themes....=6533#post6533
                      http://www.premium-contao-themes.com

                      Kommentar

                      Lädt...
                      X