Das agavi-Framework verwendet die PUT-Anforderung für create und POST zum Aktualisieren von Informationen. Normalerweise wird dies in REST umgekehrt verwendet (oft bezieht sich dies auf POST, wenn Informationen hinzugefügt werden, während PUT den gesamten Datensatz ersetzt).Verwendet php mvc framework agavi CRUD-konform zu REST?
Wenn ich es richtig verstehe, ist das wichtige Problem, dass PUT idempotent sein muss, während POST diese Anforderung nicht hat. Daher wüsste ich, wie das Erstellen eines neuen Datensatzes idempotent sein kann (dh mehrere Anfragen führen nicht zu mehreren Kreationen eines Datensatzes), insbesondere wenn das ORM normalerweise eine ID als Primärschlüssel verwendet und die ID eines neuen Datensatzes nicht bekannt wäre an den Client (da es in der Datenbank automatisch erstellt wird), kann daher nicht Teil der Anfrage sein. Wie hält Agavi die Anforderung der Idempotenz für die PUT-Anforderung aufrecht?
Danke.
Danke für Ihre Antwort. Ja, ich habe Anweisungen zur Änderung in der Datei factories.xml gesehen. Ich war interessiert zu wissen, warum Schienen und agavi in ihrem Ansatz unterschiedlich sind. Ich denke, Ihre Antwort hat mir eine neue Perspektive für diese Frage gegeben. – txwikinger
Um dies zu verdeutlichen, sollten Sie "HTML 4.01" angeben, da der Arbeitsentwurf von HTML5 andere HTTP-Verben zu Webforms hinzufügt. – aehlke