問題タブ [http-patch]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - backbone.stickit と html-form: 変更された属性のみを保存 (パッチ) する方法は?
tl;dr
backbone.stickit を html フォームで使用して、サーバーからフェッチされた既存のモデルを変更し、変更された属性 (html フォーム内のユーザー入力によって変更された) のみをサーバーにパッチする方法は?
/tl;dr
backbone.js アプリケーションでbackbone.stickitを使用して、モデルをバックボーン ビューの一部である HTML フォームにバインドしています。ここまでは問題なく動作しますが、バインドされたモデルを保存しようとすると、少し複雑になります。これは、PATCH メソッドを使用して、変更された属性のみをサーバーに送信するためです。これまでに行ったことを説明しようとします。
サーバーからモデルを取得する
changedAtrributes()
最後の行は私の問題を示しています。後でメソッドを使用して、サーバーでパッチが必要な属性を取得できると思ったからです。だから私はここで見つけたこの回避策を試しました
stickit-bindings を行う
次に、ビューをレンダリングし、ビューでstickit()
メソッドを呼び出してバインディングを行います。
バインディングは正常に機能し、ユーザー モデルは更新されますが、changedAttributes()
常に空のままです。
モデルをサーバーに保存する
ユーザーが必要な変更をすべて行ったら、モデルをサーバーに保存する必要があります。PATCH メソッドを使用して、変更された属性のみをサーバーに送信したいと考えています。
また
2 番目のアプローチでは、さまざまな結果が得られます。
- 回避策を使用しなかった場合
user.set({})
、すべての属性がサーバーにパッチされます - 回避策を使用すると
user.set({})
、戻り値changedAttributes()
は「false」になり、すべての属性がサーバーに PUT されます - を呼び出す
user.set("age","123")
前に を呼び出すとsave()
、 age 属性のみがサーバーにパッチされます
set()
したがって、結果 3 は私の望ましい動作ですが、これには 2 つの問題があります。最初の stickit は、html フォーム内で属性が変更された場合、属性を更新するためにモデルのメソッドを使用していないようです。次に、ある属性を指定して呼び出しset()
、その後別の属性を指定すると、2 番目の属性のみが によって返されchangedAttributes()
ます。
backbone または backbone.stickit ドキュメントで何かを監視しただけかもしれません。それについてのアイデアはありますか?
http - HTTP パッチ メソッド。リクエストボディの内容
Symfony2 を使用して REST API を開発しています。予約システムを使用しており、管理者によって予約が有効になったときに顧客にメールを送信したいと考えています。
予約リソースがあり、次の URL を使用して予約を検証できます。
パッチ localhost/:id/validate
PATCH メソッドを使用してリソースを検証するときに、メールの内容をリクエストの本文に入れることが正しいかどうかを知りたいです。
いいえの場合、正しい方法は何ですか?
ありがとう、メディ。
python - Django 画像フィールドと s3 で PATCH を使用する
現在のプロジェクトでは、画像を s3 バケットに保存しています。Image クラスの s3 バケットから実際の画像を削除する pre_save シグナル レシーバーがあります。
私の問題は、django-rest-framework を使用していて、PATCH を機能させたいということです。たとえば、イメージの説明にパッチを適用しようとすると、イメージ自体が削除されます。私の質問は、変更が必要なパッチに新しい画像があるかどうかを区別する IF をどのように記述し、そうでない場合は何もしないかということです。
http - REST API で PATCH または PUT を使用する必要がありますか?
次のシナリオに適した方法で残りのエンドポイントを設計したいと考えています。
グループがあります。各グループにはステータスがあります。グループは、管理者がアクティブ化または非アクティブ化できます。
エンドポイントを次のように設計する必要があります
また
ravendb - コレクション内のすべてのドキュメントに配列要素を追加する
私のFoo
ドキュメントには、CustomData
ユーザーが構成可能なプロパティを追加するために使用されるコレクションがあります。
これらのプロパティを作成するときに、インデックス作成のためにデフォルト値を追加する必要がある場合があります。
これは私がその目的のために使用しようとしているものです:
これにより、次の HTTP 要求が生成されます。
これは を返します200 OK
が、ドキュメントは変更されません。