permission.decorators package¶
Submodules¶
permission.decorators.classbase module¶
permission_required decorator for generic classbased view from django 1.3
-
permission.decorators.classbase.
get_object_from_classbased_instance
(instance, queryset, request, *args, **kwargs)[source]¶ Get object from an instance of classbased generic view
Parameters: instance : instance
An instance of classbased generic view
queryset : instance
A queryset instance
request : instance
A instance of HttpRequest
Returns: instance
An instance of model object or None
-
permission.decorators.classbase.
permission_required
(perm, queryset=None, login_url=None, raise_exception=False)[source]¶ Permission check decorator for classbased generic view
This decorator works as class decorator DO NOT use
method_decorator
or whatever while this decorator will useself
argument for method of classbased generic view.Parameters: perm : string
A permission string
queryset_or_model : queryset or model
A queryset or model for finding object. With classbased generic view,
None
for using view default queryset. When the view does not defineget_queryset
,queryset
,get_object
, orobject
thenobj=None
is used to check permission. With functional generic view,None
for using passed queryset. When non queryset was passed thenobj=None
is used to check permission.Examples
>>> @permission_required('auth.change_user') >>> class UpdateAuthUserView(UpdateView): ... pass
permission.decorators.functionbase module¶
permission_required decorator for generic function view
-
permission.decorators.functionbase.
get_object_from_date_based_view
(request, *args, **kwargs)[source]¶ Get object from generic date_based.detail view
Parameters: request : instance
An instance of HttpRequest
Returns: instance
An instance of model object or None
-
permission.decorators.functionbase.
get_object_from_list_detail_view
(request, *args, **kwargs)[source]¶ Get object from generic list_detail.detail view
Parameters: request : instance
An instance of HttpRequest
Returns: instance
An instance of model object or None
-
permission.decorators.functionbase.
permission_required
(perm, queryset=None, login_url=None, raise_exception=False)[source]¶ Permission check decorator for function-base generic view
This decorator works as function decorator
Parameters: perm : string
A permission string
queryset_or_model : queryset or model
A queryset or model for finding object. With classbased generic view,
None
for using view default queryset. When the view does not defineget_queryset
,queryset
,get_object
, orobject
thenobj=None
is used to check permission. With functional generic view,None
for using passed queryset. When non queryset was passed thenobj=None
is used to check permission.Examples
>>> @permission_required('auth.change_user') >>> def update_auth_user(request, *args, **kwargs): ... pass
permission.decorators.methodbase module¶
permission_required decorator for generic classbased/functionbased view
-
permission.decorators.methodbase.
permission_required
(perm, queryset=None, login_url=None, raise_exception=False)[source]¶ Permission check decorator for classbased/functionbased generic view
This decorator works as method or function decorator DO NOT use
method_decorator
or whatever while this decorator will useself
argument for method of classbased generic view.Parameters: perm : string
A permission string
queryset_or_model : queryset or model
A queryset or model for finding object. With classbased generic view,
None
for using view default queryset. When the view does not defineget_queryset
,queryset
,get_object
, orobject
thenobj=None
is used to check permission. With functional generic view,None
for using passed queryset. When non queryset was passed thenobj=None
is used to check permission.Examples
>>> # As method decorator >>> class UpdateAuthUserView(UpdateView): >>> @permission_required('auth.change_user') >>> def dispatch(self, request, *args, **kwargs): ... pass >>> # As function decorator >>> @permission_required('auth.change_user') >>> def update_auth_user(request, *args, **kwargs): ... pass
permission.decorators.permission_required module¶
-
permission.decorators.permission_required.
permission_required
(perm, queryset_or_model=None, login_url=None, raise_exception=False)[source]¶ Permission check decorator for classbased/functional generic view
This decorator works as class, method or function decorator without any modification. DO NOT use
method_decorator
or whatever while this decorator will useself
argument for method of classbased generic view.Parameters: perm : string
A permission string
queryset_or_model : queryset or model
A queryset or model for finding object. With classbased generic view,
None
for using view default queryset. When the view does not defineget_queryset
,queryset
,get_object
, orobject
thenobj=None
is used to check permission. With functional generic view,None
for using passed queryset. When non queryset was passed thenobj=None
is used to check permission.Examples
>>> # As class decorator >>> @permission_required('auth.change_user') >>> class UpdateAuthUserView(UpdateView): ... pass >>> # As method decorator >>> class UpdateAuthUserView(UpdateView): ... @permission_required('auth.change_user') ... def dispatch(self, request, *args, **kwargs): ... pass >>> # As function decorator >>> @permission_required('auth.change_user') >>> def update_auth_user(request, *args, **kwargs): ... pass
Note
Classbased generic view is recommended while you can regulate the queryset with
get_queryset()
method. Detecting object from passed kwargs may not work correctly.
permission.decorators.utils module¶
Decorator utility module