私は初心者の Laravel 開発者で、非常に面倒な社内開発システムを使用する既存のアプリのパーミッション システムを改良しようとしています。よりクリーンで保守しやすいソリューションに切り替えようとしています。zizaco/entrust を使用しようとしていますが、必要な機能がサポートされていない可能性があります。ユーザーが権限を持っているかどうかを確認するだけでなく、そのユーザーが特定のデータベース レコードを操作する権限を持っているかどうかを確認する必要があります。たとえば、次のように呼び出すことはできません。
if(!$this->cruser->hasPermission('OwnResourcePermission')) return;
また、そのユーザーがリソースを所有しているかどうか、チームの誰かが所有しているかどうか、上司が所有しているかどうかなども確認する必要があります。
それで、Entrust(または他のパーミッションライブラリ)を活用する方法はありますか、それともパーミッションをチェックし、DBにクエリを実行して他の条件をチェックし、それらが失敗した場合に返すようなことをしますか? 私は最もクリーンで保守しやすいソリューションを探していますが、これは私にとってかなり大きな仕事です。少し圧倒され、どこから始めればよいかわかりません。