問題タブ [fastjsonpatch]
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.
postgresql - React->ExpressJS->Postgres から Postgres JSONB 列にパッチを適用する最良の方法は何ですか?
(AG-Grid を使用してレンダリングされた) 大きなデータ テーブルがあり、それを Postgres バックエンドで更新したいのですが、次の部分への最善のアプローチは、作業量と最善のアクション コースの観点から、事前に検証する必要があります。 .
ライブラリを使用するfast-json-patch
と、クライアントで簡単に JSON パッチ リストを取得できます。
次に、ExpressJS の「バックエンド」で一連のjsonb_set
クエリを反復処理して Postgres を更新します。
または、更新するレコードを Postgres から取得fast-json-patch
し、ExpressJS バックエンド内で JSONB データにパッチを適用してから、Postgres レコードを一度に更新することもできますか?
これは私が以前に行ったことではありませんが、かなり一般的なものに違いないと確信しています。最善の一般的なアプローチは何ですか?
アップデート
私は2番目のアプローチを実装しようとしました-私の問題は、更新するJSONBフィールドがあるときにPostgresをロック/ロック解除することです。私の問題は、エクスプレス側からレコードのロックと更新を実際に実装すること、特に pg バックエンドでの作業の非同期性を処理しようとすることです。
私は、誰かがこのハムフィストの試みで(意図的ではない)エラーを見つけることができるかどうか疑問に思いました:
json - JSONパッチを介してJSONのリストを追加する必要があります
JSONパッチについて読んでいます。ただし、問題の解決策が見つかりません。リストを追加する必要がある JSON があります。
例えば:
このアイテムのリストを orders 属性の下に挿入する必要があります。
したがって、期待される結果は次のとおりです。
これはJSONパッチの私のコードです:
追加しようとしている "/items" がドキュメント パスにないというエラーが表示されます。