Skip to content
Change the Django admin index page without too much hassle or visual changes.
Python HTML CSS Makefile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
django_admin_index
requirements
scss
tests
.coveragerc
.editorconfig
.gitignore
.isort.cfg
.travis.yml
CHANGELOG.rst
CONTRIBUTORS.rst
LICENSE
MANIFEST.in
Makefile
README.rst
manage.py
package-lock.json
package.json
setup.cfg
setup.py
tox.ini

README.rst

Admin Index for Django

Version: 1.1.0
Download:https://pypi.python.org/pypi/django_admin_index
Source:https://github.com/maykinmedia/django-admin-index
Keywords:django, admin, dashboard

Build status coverage Lintly BSD License Supported Python versions Supported Django versions

About

This extension enables you to group, order and customize the Django admin index page without too much hassle or visual changes.

There are 2 concepts: Application groups and Application links. You can create an application group and add any model to it in the Django admin, under Admin index. Whether the models are shown to the user, depends on the regular Django permissions and whether it's registered in the admin.

An application link is simply a URL with a name that you can add to an application group. It shows as a regular Django model.

One final change in the Django admin is the removal of the App lists, that link to a list of models within an App. This concept became obsolete.

Installation

You can install django_admin_index either via the Python Package Index (PyPI) or from source.

To install using pip,:

$ pip install -U django_admin_index

Usage

To use this with your project you need to follow these steps:

  1. Install the django_admin_index library:

    $ pip install django_admin_index
  2. Add django_admin_index and ordered_model to INSTALLED_APPS in your Django project's settings.py. Make sure that django_admin_index comes before django.contrib.admin:

    INSTALLED_APPS = (
        'django_admin_index',
        'ordered_model',
        ...,
        'django.contrib.admin',
    )
    

    Note that there is no dash in the module name, only underscores.

  3. Add django_admin_index.context_processors.dashboard to the context processors in your Django project's settings.py:

    TEMPLATES = [
        {
            ...
            'OPTIONS': {
                'context_processors': [
                    ...
                    'django_admin_index.context_processors.dashboard'
                ],
            },
        },
    ]
    
  4. Create the database tables by performing a database migration:

    $ python manage.py migrate admin_index
  5. Go to the Django admin of your site and look for the "Application groups" section.

Configuration

There are 2 settings you can add to your settings.py:

  • ADMIN_INDEX_SHOW_REMAINING_APPS (defaults to False)

    Show all models that are not added a to an Application group in a group called "Miscellaneous" for staff users.

  • ADMIN_INDEX_SHOW_REMAINING_APPS_TO_SUPERUSERS (defaults to True)

    Show all models that are not added a to an Application group in a group called "Miscellaneous" for super users users.

  • ADMIN_INDEX_AUTO_CREATE_APP_GROUP (defaults to False)

    Automaticly creates an Application group, based on the app_label, for all the models that would be in the "Miscellaneous" group. If True, your Django admin will initially look as it normally would.

  • ENVIRONMENT (defaults to production)

    Adds a version tag after the brand name. We have colors for: - development (purple) - test (red) - staging (blue) - default green.

You can’t perform that action at this time.