Группировка ModelMultipleChoiceField в пользовательской группе и форме разрешений в django

Я должен реализовать пользовательскую форму для назначения разрешений для групп в django. У меня есть несколько приложений в проекте, и каждое из них определяет свой собственный набор разрешений в своей собственной модели «AppPermissions». В настоящее время я использую ModelMultipleChoiceField с виджетом CheckboxSelectMultiple. Вот так:

      app_permissions = Permission.objects.filter(content_type__model='apppermissions')

permissions = GroupedModelMultipleChoiceField(
    app_permissions,
    widget=forms.CheckboxSelectMultiple
)

Теперь это уже отображает флажки, которые мне нужны для отображения разрешений, но требование состоит в том, что они должны быть сгруппированы по приложению. В заголовке/контенте:

      App1_Name_Header
  [] App1_name_Permission1
  [] App1_name_Permission2
  [] App1_name_Permission3
App2_Name_Header
  [] App2_name_Permission1
  [] App2_name_Permission2
etc...

Есть ли способ реализовать это? Я очень неопытен с django, поэтому, если есть способ создать виджет или настраиваемое поле, которое может это сделать, любые рекомендации будут оценены.

0 ответов

Другие вопросы по тегам