A collection of tools for the django administration interface
django-admin-tools is a collection of extensions/tools for the default django administration interface, it includes:
- a full featured and customizable dashboard;
- a customizable menu bar;
- tools to make admin theming easier.
The code is hosted on Github.
Please join the mailing list if you want to discuss of the future of django-admin-tools.
django-admin-tools is compatible with Django 1.11 LTS, and 2.1+ as well Python 2.7, 3.5+.
For older python and django versions please use the 0.8.1 version of django-admin-tools which is available on Pypi.
To install django-admin-tools, run the following command inside this directory:
python setup.py install
If you have the Python easy_install utility available, you can also type the following to download and install in one step:
Or if you’re using pip:
pip install django-admin-tools
Or if you’d prefer you can simply place the included “admin_tools” directory somewhere on your python path, or symlink to it from somewhere on your Python path; this is useful if you’re working from a Mercurial checkout.
An installation guide is available in the documentation.
There is a a transifex project for django-admin-tools.
The django admin login screen:
The admin index dashboard:
The admin menu:
Dashboard modules can be dragged, collapsed, closed etc.:
The app index dashboard:
Version 0.9.0, 19 January 2020:
This release adds support for Django up to 2.2 and fixes various issues.
- Django 2.2 support
- Python 3.7 support
- Updated documentation
Version 0.8.1, 30 May 2017:
This release adds support for Django 1.11 and fixes various issues.
- Django 1.11 support
- Added app config to enable label override to avoid app name collisions
- Security fix: prevent removing users bookmarks by knowing the id
- Better support for custom user models
- Fixed docstrings
Version 0.8.0, 12 August 2016:
This release adds support for Django 1.10 and fixes various bugs and documentation issues.
- Django 1.10 support
- Dashboard pre_content and post_content now accept HTML by default
- Use the staff_member_required decorator instead of login_required
- Use user.get_username() instead of user.username
- Fixed wrong template loader class name in a warning issued by DAT
- Fixed various typos in docs and docstrings
Version 0.7.2, 14 January 2016:
- Removed the config check that was causing issues in certain situations, we now use the builtin django system checks framework
- Removed superfluous “trans” calls in admin_tools templates
- Full PEP8 compliance
Version 0.7.1, 27 November 2015:
Bugfix release. This release fixes an incompatibility with django.template.loaders.cached.Loader.
Version 0.7.0, 5 November 2015:
- IMPORTANT INFORMATION, PLEASE READ: *
Starting from this version (0.7.0) you must add admin_tools.template_loaders.Loader to your templates loaders variable in your settings file, see here for details: https://django-admin-tools.readthedocs.io/en/latest/configuration.html
- Support for Django 1.9 and the new admin flat theme
- Added a custom template loader (based on django-apptemplates) that allows us to extends admin templates instead of overriding them
- Fixed a lot of warnings
- Fixed other minor issues and typos
Version 0.6.0, 7 July 2015:
- VERY IMPORTANT INFORMATION, PLEASE READ: *
Starting from this version (0.6.0) django-admin-tools is no longer compatible with Django 1.6 or lower.
Users of older django version should use the 0.5.2 version available on pypi.
If you are already using django-admin-tools with django <= 1.6, be sure to pin your requirements file to a specific version, eg: django-admin-tools==0.5.2 If you don’t do this, a “pip install –upgrade” will break your admin site. You have been warned !
Now for the actual change log:
- Dropped support for django 1.6 or lower
- Added support for django 1.8
- Cleaned up old compatibility code
- Use django builtin static
- Various improvements and bug fixes
Version 0.5.2, 11 August 2014:
- Added django 1.5 and 1.6 support
- Django 1.7 is supported but migrations still using south
- Added python 3 support
- Add some blocks to facilitate template inheritance
- Add management command to remove the dashboard preferences
- Fixed issue #126 (feedparser deprecation warning)
- Fixed issue #133 (recent Actions links have an unecessary /admin/ prefix)
- Use i18n app name in app_list, menu and breadcrumb of app_index
- Use user.get_short_name and user.get_username in admin header (fixes #121)
- Better docstring for AppList and ModelList modules
- Eliminated jumping to top of page when clicking collapse/add/remove buttons on dashboard modules
Thanks to all the folks who contributed to this release.
Version 0.5.1, 13 March 2013:
Bugfix release, everyone using django < 1.5 should upgrade
This release fixes a bug that was breaking the LinkList dashboard module (thanks Iacopo Spalletti for the pull request).
Version 0.5.0, 06 March 2013:
Important information if you are upgrading from a previous version
Starting from this version, django-admin-tools requires Django 1.3 or superior. If you’re running Django < 1.3, DO NOT UPGRADE and stay with the 0.4.1 version.
- Compatibility with Django 1.4 and Django 1.5
- Upgraded to latest jQuery / jQuery-ui
- Many bug fixes and small improvements
Version 0.4.1, 15 November 2011:
- Static files and django 1.3 support
- Fixed modules instanciation issues (fixes #65)
- Nested groups support & better html id generation (fixes issue #70)
- Fixed various js and css problems
- Added translation for Finnish + updates on other languages
- More robust dashboard layout
- Added force_show_title property to Group module
Version 0.4.0, 13 December 2010:
Important information if you are upgrading from a previous version
This release of django-admin-tools introduces support for south database migrations, if you are not using south you can skip this step.
Existing django-admin-tools should do the following:
python manage.py migrate --fake admin_tools.dashboard python manage.py migrate --fake admin_tools.menu
New users should do:
python manage.py migrate admin_tools.dashboard python manage.py migrate admin_tools.menu
- big improvements of the API (see the dashboard and menu documentation for details), the old API is still supported but now deprecated;
- added a ModelList menu item;
- custom and multiple admin sites basic support;
- better integration with django-grappelli;
- django south support.
Bugfixes and minor changes
- Fixed issue #40 (python 2.5 compatibility);
- Fixed issue #49: disable rendering of empty group modules;
- Fixed issue #51: more robust test runner;
- Fixed issues #57 and #58: updated custom dashboard and menu template files to reflect the current code;
- Fixed issue #60: explicitely set color for links in module content;
- Some fixes for the future django 1.3;
- Fixes issue #61: Create empty preferences instance if user has no preferences saved yet.
- Fixed issue #62: updated base template to reflect django 1.2 changes;
- Fixed various js namespace pollutions;
- Improved docs;
- CZ locale support.
For more informations please see: http://bitbucket.org/izi/django-admin-tools/changesets
Version 0.3.0, 16 July 2010:
- added tests infrastructure, code coverage is around 70%;
- import paths and class names are changed. Old class names and paths are deprecated but still work;
- dashboard.modules.AppList, dashboard.modules.ModelList and menu.items.AppList now have ability to display any models from different apps (using glob syntax) via models and exclude parameters. The order is now preserved. See #15;
- implemented dashboard module groups : you can now group modules in tabs, accordion or in a stacked layout.
Bugfixes and minor changes
- moved the menu and dashboard template dirs in a “admin_tools” directory to avoid name conflicts with other apps, for example: django-cms (see: http://github.com/digi604/django-cms-2.0/issues/issue/397/);
- fixed bookmark bugs. The saved url was urlencoded, so we need to decode it before we save it. Added a clean_url method to the BookmarkForm. Fixes #25;
- build urlpatterns conditionally regarding the content of INSTALLED_APPS;
- better display of selected menu items;
- avoid a useless ajax GET request for retrieving dashboard preferences;
- upgraded jquery and jquery ui and renamed the files to more generic names;
- don’t show bookmark form if NoReverseError. This was breaking the django.contrib.auth unit tests;
- fixed url lookup for remove bookmark form;
- fixed issue #26 (menu bar showing for non-staff users) and also updated templates to match the django 1.2 templates;
- fixed issue #29 : Django 1.2 admin base template change;
- changed the way js files are loaded, hopefully now they are loaded syncronously (fixes issue #32);
- fixed issue #33: empty applist menu items should not be displayed;
- fixed issue #34: can’t drag modules into an empty column;
- fixed issue #35 (wrong docstring for menu).
New class names and paths
- admin_tools.dashboard.models.Dashboard => admin_tools.dashboard.Dashboard
- admin_tools.dashboard.models.DefaultIndexDashboard => admin_tools.dashboard.DefaultIndexDashboard
- admin_tools.dashboard.models.DefaultAppIndexDashboard => admin_tools.dashboard.DefaultAppIndexDashboard
- admin_tools.dashboard.models.AppIndexDashboard => admin_tools.dashboard.AppIndexDashboard
- admin_tools.dashboard.models.DashboardModule => admin_tools.dashboard.modules.DashboardModule
- admin_tools.dashboard.models.AppListDashboardModule => admin_tools.dashboard.modules.AppList
- admin_tools.dashboard.models.ModelListDashboardModule => admin_tools.dashboard.modules.ModelList
- admin_tools.dashboard.models.LinkListDashboardModule => admin_tools.dashboard.modules.LinkList
- admin_tools.dashboard.models.FeedDashboardModule => admin_tools.dashboard.modules.Feed
- admin_tools.menu.models.Menu => admin_tools.menu.Menu
- admin_tools.menu.models.DefaultMenu => admin_tools.menu.DefaultMenu
- admin_tools.menu.models.MenuItem => admin_tools.menu.items.MenuItem
- admin_tools.menu.models.AppListMenuItem => admin_tools.menu.items.AppList
- admin_tools.menu.models.BookmarkMenuItem => admin_tools.menu.items.Bookmarks
Version 0.2.0, 15 March 2010:
- bookmarks are now being saved in the database (fixes issue #20, thanks @alexrobbins);
- dashboard preferences are also saved in the database;
- added support for django-staticfiles STATIC_URL settings (fixes issue #21, thanks @dstufft);
- fixed issue #23: render_theming_css tag does not work on windows;
- added polish, italian, greek and brazilian locales;
- updated docs.
Backwards incompatible changes in 0.2.0
Now, django-admin-tools stores menu and dashboard preferences in the database, so you’ll need to run syncdb and to add the django-admin-tools urls to your urlconf. These steps are described in details in the documentation. You’ll also need to add admin_tools to your INSTALLED_APPS for the locales to work (this was not documented in previous versions).
Version 0.1.2, 13 February 2010:
- fixed documentation issues;
- added locales;
- fixed issue #9: don’t fail when feedparser is not installed;
- fixed issue #5: implemented dashboard layout persistence in cookies;
- enable all modules by default in the default dashboard;
- fixed recent actions log entry urls when displayed in app_index;
- added a “bookmarks” menu item and the code to manage bookmarks;
- fixed jquery issues with django 1.2.
Version 0.1.1, 10 February 2010:
- fixed issue #2: template tag libraries have generic names;
- changed the way dashboards are selected, don’t rely on request variables but pass an extra argument to the template tag instead (fixes issue #3);
- fixed MANIFEST.in (fixes issue #1);
- better setup.py file.
Version 0.1.0, 10 February 2010:
- Initial release
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size django_admin_tools-0.9.0-py2.py3-none-any.whl (287.0 kB)||File type Wheel||Python version 3.7||Upload date||Hashes View|
|Filename, size django-admin-tools-0.9.0.tar.gz (454.5 kB)||File type Source||Python version None||Upload date||Hashes View|
Hashes for django_admin_tools-0.9.0-py2.py3-none-any.whl