Wird ein Model über die Methode Opus_Document::deleteFields() gelöscht und dann diesem Feld nach dem Speichern des Dokuments eine neue Model-Instanz zugewiesen, so liefert die Methode Opus_Model_AbstractDb::isNewRecord() für dieses neue Model den Wert false, obwohl das Model noch nicht in der Datenbank persistiert ist und also keine ID hat.
Das Verhalten ist dokumentiert im Test, der an Ticket OPUSVIER-3203 hängt (Opus_DocumentTest::testDeleteFields(); auch wenn hier nicht explizit der Rückgabewert von Opus_Model_AbstractDb::isNewRecord() geprüft wird).
Wird ein Model über die Methode Opus_Document::deleteFields() gelöscht und dann diesem Feld nach dem Speichern des Dokuments eine neue Model-Instanz zugewiesen, so liefert die Methode Opus_Model_AbstractDb::isNewRecord() für dieses neue Model den Wert false, obwohl das Model noch nicht in der Datenbank persistiert ist und also keine ID hat.
Das Verhalten ist dokumentiert im Test, der an Ticket OPUSVIER-3203 hängt (Opus_DocumentTest::testDeleteFields(); auch wenn hier nicht explizit der Rückgabewert von Opus_Model_AbstractDb::isNewRecord() geprüft wird).