内部および外部で使用する内部プロジェクト管理ソフトウェア(ala Basecamp)を構築しています。しかし、高度な権限を実行するための最良の戦略を見つけるのに苦労しています。
Basecampと同様に、多数のクライアントが存在し、その下に多数のプロジェクトがあります。各ユーザーに異なる表示権限を各クライアントとプロジェクトに割り当てて、誰が何を表示できるかを決定できるようにしたいと思います。基本的に、管理者は「このユーザーはこれらの4つのプロジェクトを見ることができます」と言うことができ、そのユーザーがログインすると、それらの4つのプロジェクトが表示されます。
全体的な権限にCancanを使用していますが、必要な方法で割り当てることができないようです。role_model、cantangoなどを見てきました。しかし、それはかなり標準的なように見えますが、私がやろうとしていることにぴったり合うユースケースを見つけることができません。
ここに何か洞察はありますか?
ありがとう!
編集:
パーミッションテーブルを作成するだけでよいのは明らかです(ここで説明:プロジェクトの関連付けごとに基本的なユーザーパーミッションを作成する方法は?)。私はa)に苦労していますこれが最善の方法ですか?さらに重要なのは、b)アプリの権限を確認し、許可されたデータのみを表示するための最良の方法は何ですか?