[TYPO3-german] extbase extension '0' speichern bei instance aus anderem repository

Ralf-Rene Schröder ralf.rene at online.de
Wed Aug 10 21:32:49 CEST 2016


Hallo zusammen...
ich sitze gerade in einem kleinen Teufelskreis...

ich habe in einer Extbase extension ein Feld mit namen beruf
das zugehörige Formularfeld ist
<f:form.select name="beruf" property="beruf" class="form-control"
options="{berufe}" optionLabelField="bezeichnung"
prependOptionLabel="Bei Ausbildung bitte wählen" />

{berufe} ist die Liste aller berufe aus dem berufRepository
klappt alles problemlos WENN ich einen Beruf wähle...
aber nun gibt es Situationen da bleibt das Feld leer und in dem Moment
bekomme ich beim Speichern (in diesem Fall update) folgenden Fehler
(logisch, weil ja 0 gesetzt wird):

PHP Catchable Fatal Error: Argument 1 passed to
Vendor\\Myext\\Domain\\Model\\Teilnehmer::setBeruf() must be an instance
of Vendor\\Myext\\Domain\\Model\\Beruf, null given, ...

Wenn ich das prependOptionLabel= aus der selectbox entferne geht es
wieder aber es wird natürlich der erste Datensatz abgespeichert, was ja
falsch ist...

Wie löse ich diesen Gordischen Knoten ???
An anderer Stelle hatte ich das gleiche Problem schon mal und habe es
mit einem Dummydatensatz der immer als erstes in der Liste ist gelöst
(da erfolgte die Sortierung auch fest nach der UID, hier aber
alphabetisch), aber das kann ja nicht eine wirklich richtige Lösung sein...

-- 
image[FORMAT] - Ralf-René Schröder
http://www.image-format.eu ... Wir geben Ihrem Image das richtige Format


More information about the TYPO3-german mailing list