ユーザー登録、ユーザープロファイル、およびログインを処理するためにdjango-userenaアプリケーションを使用しています。今、私はアプリケーションを書いています -
- ユーザーはコースを作成できます (コースは、コースに関する情報を保存するプロファイルのようなものです)。
- 他のユーザーもこのコースに登録できます。登録にはコース作成者の承認が必要です。
- コース作成者のみがコースページを編集でき、コースの課題を作成できます。
- コースに登録したすべてのユーザーは、コース ページとコースの割り当てを参照できます (読み取り専用)。
- コース作成者は、コースのすべての課題を編集する権限を他のユーザーに与えることができます。
解決策の 1 つは、作成者と変更者の 2 つのグループを作成することです。現在、作成者グループはコース ページを編集でき、変更者のメンバーはその特定のコースの割り当てを変更できます。このソリューションの問題は、ユーザーを作成者グループに追加すると、すべてのコースを編集する権限が自動的に取得されることです。同様に、修飾子グループのメンバーは、すべてのコースのすべての割り当てを編集できます。これは必須ではありません。
このアプリケーションをどのように設計すればよいですか?