django-authority/docs/handling_admin.txt
2009-07-17 11:29:53 +02:00

51 lines
No EOL
1.8 KiB
Text

.. _handling-admin:
===================================================
Handling permissions using Django's admin interface
===================================================
*to be written*
Apply permissions using Django's admin actions
==============================================
.. note:: Django admin actions are available in Django 1.1 or later.
.. image:: .static/admin-action-permission.png
Disable the admin action site-wide
----------------------------------
To disable the action site-wide, place this line somewhere in your code.
One of your app ``admin.py`` files might be a good place::
admin.site.disable_action('edit_permissions')
Further informations are available in Django's documentation:
`Disabling a site-wide action`_. If you encounter an error like::
Exception Type: KeyError at /admin/weblog/entry/
Exception Value: 'edit_permissions'
Make sure you placed ``authority.autodiscover()`` before ``admin.autodiscover()``.
See :ref:`configuration` for details.
.. _Disabling a site-wide action: http://docs.djangoproject.com/en/dev/ref/contrib/admin/actions/#disabling-a-site-wide-action
Disable the admin action per ModelAdmin instance
------------------------------------------------
In case you want to disable the permission action per ModelAdmin, delete this
action within the ``get_actions`` method. Here is an example::
class EntryAdmin(admin.ModelAdmin):
def get_actions(self, request):
actions = super(EntryAdmin, self).get_actions(request)
del actions['edit_permissions']
return actions
Further informations are available in Django's documentation:
`Conditionally enabling or disabling actions`_.
.. _Conditionally enabling or disabling actions: http://docs.djangoproject.com/en/dev/ref/contrib/admin/actions/#conditionally-enabling-or-disabling-actions