Wie aktuelle Seite mit PHP reloaden?
am 31.03.2022 - 09:46 Uhr in
Hallo zusammen,
in einem custom module gibt es eine Funktion hook_form_alter(), in der nodes nach bestimmten Kriterien überprüft und in seltenen Fällen Felder angepasst werden. In den Änderungsfällen wird abschließend $entity->save ausgeführt.
Bin ich in solchen Änderungsfällen beispielsweise auf /node/9/edit?destination=/admin/content, dann bekomme ich ein Problem. ich kann die Nodes nicht mehr abspeichern und bekomme die Meldung, dass der Node von einem anderen User bearbeitet wurde. Das wird natürlich durch $entity->save in der Schleife von hook_form_alter() verursacht.
Das Problem wäre relativ einfach zu lösen, indem nach $entity->save die Seite /node/9/edit?destination=/admin/content neu lädt. Das habe ich mit header("Refresh 0") versucht, allerdings ohne Erfolg.
Bin für jeden Tipp dankbar.
Viele Grüße, rhodes
- Anmelden oder Registrieren um Kommentare zu schreiben
Hi,
am 31.03.2022 - 13:19 Uhr
ich denke der hook_form_alter ist nicht geeignet um dort einen entity -> save() auszuführen.
Die Edit Form besagt ja, das etwas gespeichert wird.
Hook entity presave wäre evtl besser geeignet.
Gruss
Robert
https://awri.ch
Ich habe eine Schweizer Tastatur und daher kein scharfes ß ;-)