21 lines
613 B
Python
21 lines
613 B
Python
|
from django import forms
|
||
|
from django.contrib.auth.models import Permission
|
||
|
from django.contrib.contenttypes.models import ContentType
|
||
|
from django.forms import widgets
|
||
|
|
||
|
|
||
|
class KFetPermissionsField(forms.ModelMultipleChoiceField):
|
||
|
|
||
|
def __init__(self, *args, **kwargs):
|
||
|
queryset = Permission.objects.filter(
|
||
|
content_type__in=ContentType.objects.filter(app_label="kfet"),
|
||
|
)
|
||
|
super().__init__(
|
||
|
queryset=queryset,
|
||
|
widget=widgets.CheckboxSelectMultiple,
|
||
|
*args, **kwargs
|
||
|
)
|
||
|
|
||
|
def label_from_instance(self, obj):
|
||
|
return obj.name
|