ユーザーが別のユーザーが既に編集しているレコードの編集ビューに移動した場合、2 番目のユーザーには、他の誰かが既にこのレコードを編集しているという簡単なフラッシュ警告が表示されるように、gem またはソリューションが必要です。レコードの楽観的または悲観的なロックは必要ありません。私は、これに対する解決策をすでに持っている宝石を見つけようとしていました。そうでない場合、私の考え方は次のとおりです。
- コントローラーの編集アクションで、レコード ID とユーザー ID のレコードをアクティビティ テーブルに保存します。
- 編集ビューに移動するときに、他のレコードがあるかどうかを確認します。
- レコードが更新されたとき、またはユーザーがページから離れたときに、アクティビティ レコードを削除します。
私が見る潜在的な問題:
- ブラウザー ウィンドウが閉じられている場合、またはユーザーのコンピューターの電源がオフになっている場合 (ページから明示的に移動することなく)、レコードが更新されなくなることを更新します。
例、または正しい方向へのポイントは素晴らしいでしょう。