When returning all permissions, return then as proxy (volatile)
by default. Same behavior as all() with default arguments. Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
This commit is contained in:
@@ -55,18 +55,14 @@ class Permission(object):
|
|||||||
@classmethod
|
@classmethod
|
||||||
def all(cls, as_choices=False):
|
def all(cls, as_choices=False):
|
||||||
if as_choices:
|
if as_choices:
|
||||||
StoredPermission = apps.get_model(
|
|
||||||
app_label='permissions', model_name='StoredPermission'
|
|
||||||
)
|
|
||||||
|
|
||||||
results = []
|
results = []
|
||||||
|
|
||||||
for namespace, permissions in itertools.groupby(StoredPermission.objects.all(), lambda entry: entry.namespace):
|
for namespace, permissions in itertools.groupby(cls.all(), lambda entry: entry.namespace):
|
||||||
permission_options = [
|
permission_options = [
|
||||||
(force_text(permission.pk), permission) for permission in permissions
|
(force_text(permission.uuid), permission) for permission in permissions
|
||||||
]
|
]
|
||||||
results.append(
|
results.append(
|
||||||
(PermissionNamespace.get(namespace), permission_options)
|
(namespace, permission_options)
|
||||||
)
|
)
|
||||||
|
|
||||||
return results
|
return results
|
||||||
|
|||||||
Reference in New Issue
Block a user