Hallo mal wieder

In unserer zu 9.5 migrierten Extension haben wir in einer Klasse
"Messung" eine 1:1 Zuweisung, die nicht zwangsläufig gesetzt sein muss:

    /**
     * group
     *
     * @var \GoCo\Anq\Domain\Model\Listing $groupList
     */
    protected $groupList;

Die DB-Felddefinition ist

    group_list int(11) unsigned DEFAULT '0' NOT NULL,

Wir haben in der DB (Daten übernommen von TYPO3 V6) diverse Einträge, wo
group_list = 0 ist, also kein entspr. Objekt zugeordnet. Das gilt für
einige Modelle und Klassen...

Nun wundere ich mich ein Bisschen, wie das früher überhaupt so
funktioniert hat.

Wenn ich $messung->setGroupList(NULL) benutze, um das Objekt zu
entfernen, erhalte ich natürlich:

    Argument 1 passed to GoCo\Anq\Domain\Model\Mesung::setGroupList()
must be an instance of GoCo\Anq\Domain\Model\Listing, null given.

Wenn ich den Type Hint im Setter entferne, mecker als nächstes die DB:
group_list can't be NULL.

Der einzige Weg ist also, die DB-Felddefinition auf DEFAULT NULL zu
ändern und den Hint zu entfernen? Oder nur den Hint entfernen, und dann
mit setGroupList(0) die Beziehung löschen?

Ich wundere mich wirklich, warum wir bisher in keiner einzigen Tabelle
NULL für "kein Objekt zugewiesen" nötig war und es anstelle mit 0 als
Wert funktioniert hat... 

Grüße,
Till


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

Antwort per Email an