Skip to main content
Help us improve PyPI by participating in user testing. All experience levels needed!

A simple django app that provides change and deletion links to FK fields in the admin.

Project description

Build Status Coverage Status

Overview

A simple django app that provides change and deletion links to FK fields in the admin while ticket #13163 and #13165 are not fixed.

Note that this apps works with django >= 1.4 only.

Display

Selected

selected

Empty

Usage

The recommended way to install django-admin-enhancer is via pip:

pip install django-admin-enhancer

Add 'admin_enhancer' to your INSTALLED_APPS to avoid getting TemplateDoesNotExist errors.

Make sure to mix EnhancedModelAdminMixin when dealing with django.contrib.admin.ModelAdmin subclasses and EnhancedAdminMixin when dealing with django.contrib.admin.InlineModelAdmin at both ends of the relationship. The mixins are located at admin_enhancer.admin.

If edition and deletion controls appears but the popup is not closed nor is the select box updated your ModelAdmin subclass referenced by the field in question is probably not mixed with EnhancedModelAdminMixin.

For some examples take a look here.

Django CMS support

Django CMS (https://www.django-cms.org/) defines a plugin system to create pluggable applications; its plugin system relies on standard Django admin framework so it’s easy to enhance plugins using this project.

Plugin enhancement

To add admin_enhancer support to your own plugins just add admin_enhancer.EnhancedAdminMixin to plugin class definition.

...
from admin_enhancer.admin import EnhancedAdminMixin

class MyOwnPlugin(EnhancedAdminMixin, CMSPluginBase):
    name = "whatever"

    ...
plugin_pool.register_plugin(MyOwnPlugin)

To enhance third party plugins, unregister original plugin and extend it with your own base class.

...
from other.app.cms_plugins import ThirdPartyPlugin
from admin_enhancer.admin import EnhancedAdminMixin

class EnhancedThirPartyPlugin(EnhancedAdminMixin, ThirdPartyPlugin):
    pass

    ...
plugin_pool.unregister_plugin(ThirdPartyPlugin)
plugin_pool.register_plugin(EnhancedThirPartyPlugin)

Page admin support

Django CMS defines a ModelAdmin for its Page object; admin_enhancer.contrib.djangocms defines a new ModelAdmin for Page to enhance it. To install it add admin_enhancer.contrib.djangocms to INSTALLED_APPS, after any django-cms or django-admin-enhancer-related application.

Django Filer support

django-filer (https://github.com/stefanfoulis/django-filer) has its own enhanced widget which conflicts with django-admin-enhancer; to enhance filer-based applications, use enhance_exclude attribute on your ModelAdmin to exclude filer-based fields from enhancement while allowing other fields to be enriched.

cmsplugin_filer (https://github.com/stefanfoulis/cmsplugin-filer) can be extended to support django-admin-enhancer like any other django CMS plugin; for better support admin_enhancer.contrib.filer defines a new ModelAdmin for ThumbnailOption class. To install it add admin_enhancer.contrib.filer to INSTALLED_APPS, before admin_enhancer.contrib.djangocms.

Release history Release notifications

This version
History Node

1.0.0

History Node

0.1.3.1

History Node

0.1.3

History Node

0.1.2

History Node

0.1.1

History Node

0.1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
django_admin_enhancer-1.0.0-py2.py3-none-any.whl (14.3 kB) Copy SHA256 hash SHA256 Wheel py2.py3 Jan 28, 2015
django-admin-enhancer-1.0.0.tar.gz (8.3 kB) Copy SHA256 hash SHA256 Source None Jan 28, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page