2016-10-24 3 views
0

Dies ist mein Skript und mein Problem ist, dass ich ein categoryList-Array habe, ist es nur in Bearbeitungsansicht bekommen. Ich möchte diese Kategorieliste bei newaction verwenden. Als ich versuchte, dieses Array in der neuen Action-View-Datei anzuzeigen, wird es leer. und ich kann es nach dem Speichern des postObject bekommen. Irgendeine Idee über dieses spezielle Problem? und variabler Test von newaction auch nicht in der newAction Template-Datei sichtbar.Extbase-Ansicht Variable nicht erhalten

Am Typo3 7.6.11

+0

Dumb Frage: Haben Sie die T3-Cache nach Änderungen zu löschen? Was siehst du mit ' {_all}'? –

+0

Ja, alles versucht. Ich kann diese Variablen nur in der Controller-Aktion sehen, sie wird zwischen Ansicht und Aktion unscharf geschaltet. – coderex

+1

Zugriff auf diese Variablen in einer Vorlage oder nur teilweise? Im zweiten Fall kann es passieren, dass Sie nicht alle Variablen über "Argumente" an einen Teil übergeben. –

Antwort

3

Argumente erklären Sie erhalten möchten, als Argumente für die Controller-Aktion. Referenzieren Sie diesen Argumentnamen in Fluid-Vorlagen korrekt, wenn Sie Links zu Ihrer Controller-Aktion erstellen. Greifen Sie nicht direkt auf Argumente aus der Anfrage zu. Fügen Sie auch die richtigen PDPdoc-Kommentare hinzu.

Grundsätzlich: tun Sie das Richtige mit Ihren Argumenten, anstatt das Framework zu umgehen. Dieser Hinweis gilt für alles, was Sie in Extbase tun.

Hinweis: Neue und Edit-Aktionen sollten niemals die gleiche Vorlage verwenden (dies zeigt weiter an, dass Sie das erwartete Verhalten des Frameworks umgehen). Erstellen und neu, ja. Aber nicht Neu und Bearbeiten. Fügen Sie bei Bedarf das Formular Felder in einem Teil und das Formular selbst in separaten Vorlagen ein, damit Sie die Aktionserstellung und die Objekt-/Objektname-Einrichtung korrekt steuern können.

0

Wenn eine $this->***Repository-Methode NULL zurückgibt, kann es sein, dass das Repository keine StoragePid definiert hat.

Stellen Sie sicher, dass sowohl newAction als auch editAction das selbe storagePid haben, das in TypoScript oder Ihren Backend Plugin Einstellungen (Flexform) definiert ist.

Die TypoScript dafür wäre in etwa so aussehen:

plugin.tx_extension.persistence.storagePid = 100 
Verwandte Themen