複数のユーザーが同じCloudKitレコードを同時に編集できるソーシャルメディアアプリケーションを構築しています。一度に1人のユーザーしか編集できないようにロック機構を実装する必要がありますか(これらの編集は互いに競合する可能性があります)、CloudKitにはこれに対処するための便利な組み込み方法がありますか?複数のユーザーが同じCloudKitレコードを編集する
ロック機構を実装すると、編集可能なレコードにバイナリ属性を追加することになります。この属性の値は、誰かが編集している場合は1、現在編集していない場合は0になります。これは妥当な方法のようですか?
これは古い質問ですが、レコードがまだ作成されていない場合は、この「変更トークン」の作業がありますか?レコードが一意のIDとして電話番号を使用し、別のフィールドとして名前を使用するとします。 2人はほぼ同じ時間に同じIDで異なる名前で送信します。実際に勝つのは1つだけです。 – DerrickHo328
@ DerrickHo328は変更トークンを最後の書き込みのタイムスタンプと考えます。それは完全に正確ではないかもしれませんが、この議論のためには十分に近いです。したがって、2人のユーザーが2つの変更を送信すると、成功した書き込みごとに変更トークンが更新されます。クラウドキットの衝突ポリシーを制御して、既存のレコードを常に上書きするか、または上で説明したようにそれを拒否することができます。 – Thunk