Rails 4 プロジェクトで初めて Devise を使用しており、モデルの所有権を特定のユーザーに限定する方法を見つけようとしています。
たとえば、ユーザーがモデルを作成した場合、そのユーザーのみがモデルに対して次の操作を実行できる必要があります。
- ユーザーに属するすべてのモデルを一覧表示する
- 見る
- 編集
- アップデート
- 消去
したがって、基本的にすべてのcrudアクションは、モデルを所有するユーザーに制限する必要があります.
DRY 慣用的な方法で所有権を実装するにはどうすればよいでしょうか? ユーザーが現在のオブジェクトを所有しているかどうかを確認するためにコントローラーをチェックできるようですが、オブジェクトが別のコントローラーによって使用されているか、ネストされた更新の一部として使用されている場合は、ロジックを再実装する必要がありますが、そうではありません。モデルが現在のユーザーにアクセスできるのは適切ではないようです。