<we:write forceedit="true"> auf Detailseite (via Klassen-Arbeitsbereich) speichert nicht

  • Hallo aus Tirol,

    ich baue mir gerade eine kleine Auftragsverwaltung zusammen, stecke aber ein bisschen fest! webEdition: 10.1.1.0, php: 8.2.30. <we:sessionStart /> hab ich im master.tmpl an erster Stelle gesetzt

    Situation: Ich habe eine Klasse "Auftraege" (classid=1). Die Klasse hat einen Arbeitsbereich mit dem Template av-detail.tmpl. Die Objekte werden über <a href="<we:field name="we_path"/>"> aus einem Listview verlinkt – die URL sieht dann so aus: index.php?we_objectID=4

    Was funktioniert: Auf einer separaten Editierseite, die via <we:a edit="object" type="listview" id="..."> aufgerufen wird, funktioniert <we:write forceedit="true"> mit <we:form id="self" pass_id="edit"> einwandfrei.

    Was nicht funktioniert: Auf der Detailseite (via Klassen-Arbeitsbereich / we_path) habe ich denselben Aufbau:

    <we:ifWritten> feuert (Erfolgsmeldung erscheint), aber die Daten werden im Objekt nicht gespeichert. Nach einem Reload sind die Felder wieder leer.

    Frage 1: Ist es grundsätzlich möglich, auf einer via Arbeitsbereich/we_path aufgerufenen Seite Objekt-Felder mit <we:write forceedit="true"> zu schreiben?

    Frage 2: Liefert pass_id die Objekt-ID korrekt wenn die Seite via Arbeitsbereich (nicht via <we:a edit="object">) aufgerufen wurde?

    Frage 3: Gibt es einen anderen Weg (z.B. ein separates Schreiben-Template im Arbeitsbereich), um auf der Detailseite Felder eines bestehenden Objekts zu aktualisieren?

    Gibt es evtl. Beispielcode, wie man das richtig macht?
    Vielen Dank um jede Anregung

    Christoph

    Christoph Kaspar

    BIG Detail, Kaspar & Sigl OG

    Riedgasse 8b

    A-6020 Innsbruck

    Tirol-Österreich

    bigdetail.com

  • Moin Christoph,
    das we:write schreibt nur, wenn der entsprechende edit Parameter gesetzt ist. Das wird auf der Detailseite nicht der Fall sein.

    Ja man kann Tricksen, ganz viel sogar.

    Du kannst die Objekte auch direkt mit PHP schreiben (nicht Updatesicher) du kannst auch mit PHP einen Request bauen, der an einen geschützten Endpunkt geht, welcher dann we:write ausführt.

    Du könntest auch in der Detailseite einen iFrame zum Bearbeiten öffnen, welcher den Editlink aufruft, so bleibst du auf der entsprechenden Seite.

    Also Möglichkeiten gibt es viele, die alle mehr oder weniger elegant sind. Was spricht gegen eine extra Edit-Seite?

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!