モデルはあなたが使用している場合、このレコードにコンテンツを更新するために、PUT「作成」と入れて、冪等
を「更新」と呼ばれている提出含まれます場合は...
万一のに設定して作成しましたデータの作成または変更の時間? PUTは冪等体なので、以前の値に頼るべきではありません。
要求を発行すると常に更新されるので、冪等元の原則に違反していますか?
モデルはあなたが使用している場合、このレコードにコンテンツを更新するために、PUT「作成」と入れて、冪等
を「更新」と呼ばれている提出含まれます場合は...
万一のに設定して作成しましたデータの作成または変更の時間? PUTは冪等体なので、以前の値に頼るべきではありません。
要求を発行すると常に更新されるので、冪等元の原則に違反していますか?
万一、データの作成または変更の時間に設定されて作成されましたか? PUTは冪等体なので、以前の値に依存すべきではありません。
私はあなたがここで何を求めているのか分かりません。 2つの異なる概念であるため、created_at
が変更時刻に設定される理由はありません。
リクエストを発行すると常に更新されるため、冪等の原則に違反していますか?
updated_at
が常に変更されているとは限りません(少なくともRailsにはないし、他の場所にあるべきでもない)。同一のPUT
を複数回実行した場合、これらの後続の要求はいずれの属性も変更しないため、偶数性は違反されません。したがって、updated_at
時間はではなくに変更されます。
興味深いことにpost on the Rails blog about PUT
& PATCH
があります。私はそれを見る方法で、ユーザーはcreated_at
またはupdated_at
を要求して送信しないでください(サーバはおそらく普通は無視してそれ自体を設定するべきです)。PUT
がオブジェクト全体を送信すべきという考え方に違反しているかどうかは確かに疑問です。しかし、そのアイデアが無視されると(それはしばしばRailsや他の場所にあるように)、PUT
は本当に冪等です。
created_atを変更しないで、modified_atまたはそれが呼び出されたものを変更します。 Created_atは作成時にのみ設定されます。 BTWは、postとputの両方を使用して値を作成および更新できます。
Re:「作成された理由はありません...」確かに、「冪等分」の意味に合わせたいだけです。 – Howard
ハワードのポイントは、HTTP仕様の下では、PUTリソースの作成または変更。あなたが結ぶリソースはいずれの方法でも同じであるはずですが、created_atフィールドはこれで気にしません。 – Chuck
@Chuck How so? 'PUT'要求が完了した後、オブジェクトに異なる' created_at'があったのはいつですか? –