Hallo,

ich komme nicht dahinter und finde auch keine passenden Hinweise im Netz.

Ich habe in meiner Extension 2 Repositories, die in einer n:m-Relation zueinander stehen. Im Backend klappt alles wunderbar.

Im Frontend werden die Daten auch korrekt gerendert. Aber das vom Extensionbuilder gebaute Edit-Formular umfasst nur die Felder des Hauptrepositories, nicht die mit der Relation. Wie muss ich jetzt im Frontend ein Eingabefeld für die Relation machen? Und muss ich die updateAction erweitern?

Z.B. Termine und Kategorien. Ein Termine hat eine Reihe von Eigenschaften, u.a. auch die Kategorien (können mehrere sein). Im Extbase-Sprech heißt das Feld "kategories". Also baue ich ein select-Feld im Fluid-Formular:

<f:form.select multiple="true" size="20" property="kategories" value="termin.kategories" options="{kategories}" optionLabelField="bezeichnung" />

Im HTML steht dann:
<select multiple="true" size="20" name="tx_meinetermine_termine[termin][kategories][]">
        <option value="5">Kategorie 1</option>
        <option value="6">Kategorie 2</option>
        <option value="3">Kategorie 3</option>
        ... usw.
</select>

Damit bekomme ich im select-Feld alle Kategorien korrekt zu sehen, aber keine ist selektiert, obwohl welche schon ausgewählt worden sind (im Backend). Und abspeichern lassen sich die ausgewählten Kategorien auch nicht. Also die Verbindung zum Kategorie-Repository ist offensichtloich nicht da.

In der editAction des terminRepository steht u.a.:
        $kategories = $this->kategorieRepository->findAll();
        $this->view->assign('kategories', $kategories);

Damit ziehe ich mir die Kategorien für die select-Optionen.

In der updateAction der terminRepository steht:
        $this->terminRepository->update($termin);

Aber nix passiert.



Weiß jemand wie es geht? Hat jemand einen Link parat, wo steht, wie es geht? Ich muss in der Richtung noch mehr machen. Als nächstes sollen dann auch noch neue Kategorien im Frontend erstellt werden können. Also im Prinzip dieselbe Funktionalität wie im Backend, wo ja immer ein plus-Zeichen neben dem Kategorie-Select-Feld ist.

Beste Grüße
Stefan



_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an