[TYPO3-german] Dirty Wert von Relationen eines

Matthew Colton mat.colton at web-xs.de
Thu Feb 11 09:25:46 CET 2021


Hi Mark,

die Methode _isDirty() gibt es tatsächlich:

https://api.typo3.org/10.4/class_t_y_p_o3_1_1_c_m_s_1_1_extbase_1_1_persistence_1_1_object_storage.html#a024770b8a32f7ee6dcd6c0e7d33e8bd5

Es gibt auch _memorizeCleanState(), "clean" ist dabei der alte Zustand, 
allerdings überschreibt der dann den dirty Zustand, also die geänderten 
Werte. In meinem Test selbst dann wenn ein neues Objekt erzeugt wird, 
bzw eine Kopie. Arrrrggggg....

Cheers
Mat

Am 11.02.21 um 08:45 schrieb Mark Boland:

> Hallo Mat,
>
> ich glaube auch, dass ObjectStorage dir da nicht weiterhelfen wird. Nach meinen Erkenntnissen ist das Objekt relativ doof und kennt so etwas wie dirty nicht. Es ist nur ein Container für die enthaltenen Objekte (die du wiederum abfragen kannst) und wird selbst nicht persistiert.
>
> Grüße
> Mark
>
>> Am 10.02.2021 um 18:46 schrieb _doc at freenet.de:
>>
>> Hallo Mat,
>>
>> Mir ist aber nicht ganz klar, was du damit erreichen möchtest.
>>
>> wenn ich es richtig weiß, wird ein Objekt erst nach dem Verlassen des
>> Controller persitiert. Das ObjectStorage macht keinen Vorab-Vergleich zu
>> einem möglicherweise bestehenden Object. Den müsstest du vermutlich
>> selbst schreiben(Count-Abfrage)
>>
>>
>> Ich verstehe den Anlass für dein Problem nicht?
>>
>> Wenn du mit mm_relationen arbeitest, dann steht in dem zugeordneten
>> Relationsfeld aus deinem Model in der Regel die Anzahl der über dieses
>> Feld relational verknüpften Elementen. (Die MM-Relationen sollen, wo ich
>> glaube irgendwann mal gelesen zu haben, auch funktionieren, wenn in dem
>> Feld ein falscher Wert drinsteht. Ich habe kein großes Vertrauen in den
>> Wert in diesem Feld.)
>>
>> Mit besten Grüßen
>>   Dieter
>>
>>> Am 10.02.2021 um 09:21 schrieb Matthew Colton:
>>> Hallo Leute,
>>>
>>> ist hier wirklich niemand bisher über das Problem gestolpert?
>>>
>>> -- 
>>>
>>> Cheers
>>> Mat
>>>
>>>> Am 04.02.21 um 11:14 schrieb Matthew Colton:
>>>> Hallo allerseits,
>>>>
>>>> ich möchte in einem Controller beim Update von einem Objekt wissen ob
>>>> eine bestimmte Relation geändert wurde. Normalerweise würde ich wie
>>>> folgt vorgehen:
>>>>
>>>> $company->getTitle()->_isDirty();
>>>>
>>>> Das funktioniert ja auch super solange die Eigenschaft kein
>>>> ObjectStorage ist. Wie kann ich prüfen ob ein ObjectStorage verändert
>>>> wurde? Also ob dem ObjectStorage ein Objekt hinzugefügt oder entfernt
>>>> wurde.
>>>>
>>>> Vielen Dank im Voraus!
>>>>
>>>>
>>>> _______________________________________________
>>>> TYPO3-german mailing list
>>>> TYPO3-german at lists.typo3.org
>>>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
>>> _______________________________________________
>>> TYPO3-german mailing list
>>> TYPO3-german at lists.typo3.org
>>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
>> _______________________________________________
>> TYPO3-german mailing list
>> TYPO3-german at lists.typo3.org
>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german


More information about the TYPO3-german mailing list