Skip to main content

Show a floating notice banner above the Django admon interface

Project description

Django Admin Notice

PyPI PyPI - Python Version PyPI - Django Version Downloads Codecov License

Show a floating notice banner above the Django admin interface. Particularly useful for indicating the current deployment environment.

Admin notice preview (light mode) Admin notice preview (dark mode)

Installation

Install django-admin-notice by running pip install django-admin-notice

Add admin_notice to your INSTALLED_APPS somewhere before django.contrib.admin.

INSTALLED_APPS = [
    "admin_notice",  # <-- Add this somewhere before "django.contrib.admin"
    "django.contrib.admin",
    # ... other apps
]

Add admin_notice.context_processors.notice to the templates context_processors. Having django.template.context_processors.request is required as well.

TEMPLATES = [
    {
        "OPTIONS": {
            "context_processors": [
                "django.template.context_processors.request",  # <-- have this
                "admin_notice.context_processors.notice",  # <-- Add this
                # ... other context processors
            ]
        },
    },
]

Settings

Set the ADMIN_NOTICE_TEXT to the text you want to show above the admin interface. No message is shown if this setting is missing or empty.

ADMIN_NOTICE_TEXT = "Production environment"

Optionally specify a custom text color and background for your notice. The default text color is white and the default background red.

ADMIN_NOTICE_TEXT_COLOR = "white"
ADMIN_NOTICE_BACKGROUND = "red"

Furthermore, optional dark theme color variants can be specified. The dark theme colors default to the non-dark theme colors.

ADMIN_NOTICE_TEXT_COLOR_DARK = "#f2f2f2"
ADMIN_NOTICE_BACKGROUND_DARK = "#FA8072"

Tips

It's a common use case to indicate the projects deployment environment. The following configuration shows how to obtain the django-admin-notice configuration from environment variables and how to configure a fallback.

from os import environ

ADMIN_NOTICE_TEXT = environ.get("ADMIN_NOTICE_TEXT", "Local environment")
ADMIN_NOTICE_TEXT_COLOR = environ.get("ADMIN_NOTICE_TEXT_COLOR", "white")
ADMIN_NOTICE_BACKGROUND = environ.get("ADMIN_NOTICE_BACKGROUND", "green")

Example project

Take a look at our Django example project under tests/project. You can run it by executing these commands:

  1. uv sync
  2. uv run tests/project/manage.py migrate
  3. uv run tests/project/manage.py createsuperuser
  4. uv run tests/project/manage.py runserver

Download files

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

Source Distribution

django_admin_notice-3.5.0.tar.gz (3.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_admin_notice-3.5.0-py3-none-any.whl (5.0 kB view details)

Uploaded Python 3

File details

Details for the file django_admin_notice-3.5.0.tar.gz.

File metadata

  • Download URL: django_admin_notice-3.5.0.tar.gz
  • Upload date:
  • Size: 3.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for django_admin_notice-3.5.0.tar.gz
Algorithm Hash digest
SHA256 f7864a1a202ae0c6322a5bb8d59766dfa5190c5f54e41d4dcf658b40aca586e3
MD5 0aa6ae96ef6d1a5d94cfe852bb2d9087
BLAKE2b-256 55d1a3be17707ccdcfd635e3d45936ef25f8fd1972bb520d8b49681dd60d6dd1

See more details on using hashes here.

File details

Details for the file django_admin_notice-3.5.0-py3-none-any.whl.

File metadata

  • Download URL: django_admin_notice-3.5.0-py3-none-any.whl
  • Upload date:
  • Size: 5.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for django_admin_notice-3.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 16b2af316e23c3f582532661e90619548e464e0d1d485c4388b63b455b95b25f
MD5 b1856d9f0145c7b8ff9ec65e06ac2157
BLAKE2b-256 8743c31651b87c608e38b47344b1b906629d4d3b24dd6bf2e3641f7652db54de

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page