Refs #30226 -- Added User.get_user_permissions() method.

Added to mirror the existing User.get_group_permissions().
This commit is contained in:
Tobias Bengfort 2019-03-24 00:40:44 +01:00 committed by Mariusz Felisiak
parent 75337a6050
commit 581a0f4545
7 changed files with 70 additions and 22 deletions

View file

@ -191,6 +191,15 @@ Methods
:meth:`~django.contrib.auth.models.User.set_unusable_password()` has
been called for this user.
.. method:: get_user_permissions(obj=None)
.. versionadded:: 3.0
Returns a set of permission strings that the user has directly.
If ``obj`` is passed in, only returns the user permissions for this
specific object.
.. method:: get_group_permissions(obj=None)
Returns a set of permission strings that the user has, through their
@ -467,14 +476,18 @@ The following backends are available in :mod:`django.contrib.auth.backends`:
A base class that provides default implementations for all required
methods. By default, it will reject any user and provide no permissions.
.. method:: get_user_permissions(user_obj, obj=None)
Returns an empty set.
.. method:: get_group_permissions(user_obj, obj=None)
Returns an empty set.
.. method:: get_all_permissions(user_obj, obj=None)
Uses :meth:`get_group_permissions` to get the set of permission strings
the ``user_obj`` has.
Uses :meth:`get_user_permissions` and :meth:`get_group_permissions` to
get the set of permission strings the ``user_obj`` has.
.. method:: has_perm(user_obj, perm, obj=None)

View file

@ -72,6 +72,10 @@ Minor features
* Added :class:`~django.contrib.auth.backends.BaseBackend` class to ease
customization of authentication backends.
* Added :meth:`~django.contrib.auth.models.User.get_user_permissions()` method
to mirror the existing
:meth:`~django.contrib.auth.models.User.get_group_permissions()` method.
:mod:`django.contrib.contenttypes`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

View file

@ -180,7 +180,8 @@ Handling authorization in custom backends
Custom auth backends can provide their own permissions.
The user model will delegate permission lookup functions
(:meth:`~django.contrib.auth.models.User.get_group_permissions()`,
(:meth:`~django.contrib.auth.models.User.get_user_permissions()`,
:meth:`~django.contrib.auth.models.User.get_group_permissions()`,
:meth:`~django.contrib.auth.models.User.get_all_permissions()`,
:meth:`~django.contrib.auth.models.User.has_perm()`, and
:meth:`~django.contrib.auth.models.User.has_module_perms()`) to any
@ -898,6 +899,15 @@ methods and attributes:
Boolean. Designates that this user has all permissions without
explicitly assigning them.
.. method:: models.PermissionsMixin.get_user_permissions(obj=None)
.. versionadded:: 3.0
Returns a set of permission strings that the user has directly.
If ``obj`` is passed in, only returns the user permissions for this
specific object.
.. method:: models.PermissionsMixin.get_group_permissions(obj=None)
Returns a set of permission strings that the user has, through their