- Author:
- jedie
- Posted:
- June 18, 2009
- Language:
- Python
- Version:
- 1.0
- Tags:
- decorator
- Score:
- 3 (after 3 ratings)
Limit a view to superuser only. raise PermissionDenied.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | #put it to your app/shared/decorators.py and than import when required
from django.core.exceptions import PermissionDenied
def superuser_only(function):
"""
Limit view to superusers only.
Usage:
--------------------------------------------------------------------------
@superuser_only
def my_view(request):
...
--------------------------------------------------------------------------
or in urls:
--------------------------------------------------------------------------
urlpatterns = patterns('',
(r'^foobar/(.*)', is_staff(my_view)),
)
--------------------------------------------------------------------------
"""
def _inner(request, *args, **kwargs):
if not request.user.is_superuser:
raise PermissionDenied
return function(request, *args, **kwargs)
return _inner
|
More like this
- Serialize a model instance by chriswedgwood 1 week ago
- Automatically setup raw_id_fields ForeignKey & OneToOneField by agusmakmun 9 months, 1 week ago
- Crispy Form by sourabhsinha396 10 months ago
- ReadOnlySelect by mkoistinen 10 months, 2 weeks ago
- Verify events sent to your webhook endpoints by santos22 11 months, 1 week ago
Comments
Please login first before commenting.