17 lines
587 B
Python
17 lines
587 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
|