Hi Dieter,

Am 10.02.21 um 18:45 schrieb _...@freenet.de:

Hallo Mat,

Mir ist aber nicht ganz klar, was du damit erreichen möchtest.
Einfach prüfen ob sich eine ganz bestimmte Relation auf einen ganz bestimmten Wert geändert hat. Falls ja und nur dann muss eine recht aufwendige Prozedur initiiert werden.
wenn ich es richtig weiß, wird ein Objekt erst nach dem Verlassen des
Controller persitiert.
Genau so ist es. Mit persistAll() kann das allerdings erzwungen werden.
  Das ObjectStorage macht keinen Vorab-Vergleich zu
einem möglicherweise bestehenden Object.

Doch, soweit ich das im Quellcode sehe wird genau geschaut welche Werte sich geändert haben. Ob sich der Wert einer Eigenschaft geändert hat kann via _isDirty() abgefragt werden. Aber leider nicht für relationale Felder.

  Den müsstest du vermutlich
selbst schreiben(Count-Abfrage)
Anscheinend ja, und zwar ohne ObjectStorage, denn dieser rückt immer nur den neuen Wert raus.
Ich verstehe den Anlass für dein Problem nicht?
Siehe oben, Lastverminderung.

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.)

Der Wert an sich nützt mir leider auch nichts. Die Prozedur muss lediglich in bestimmten Fällen initiiert werden.

Cheers,

Mat


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@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an