Skip to main content

A simple app to allow apps to register notifications that can be displayed in the admin via a template tag.

Project description

A simple app to allow apps to register notifications that can be displayed in the admin via a template tag

Installation

Add ‘admin_notifications’ to INSTALLED_APPS

Basic usage

Customize whichever of your admin templates you which to display the notifications thus.

load the template tags at the start of the template:

{% load notification_tag %}

add the tag to your template. I customised the admin index template and placed the tag before the ‘content-main’ DIV like thus:

{% block content %}
<!-- here's the tag you add -->
{% error_notifications %}
<div id=''content-main">

in urls.py:

import admin_notifications
admin_notifications.autodiscover()

This looks in each app for a file called ‘notifications.py and registers it if it exists.

Notifications files can contain as many functions as you like. Each one should return a string which can contain HTML and each one needs to be registered using admin_notifications.register

If you return an empty string then no notification is shown.

Notifications functions are called every time the admin template is rendered so avoid doing heavy calculations in the notification.

An example notifications.py might look like this:

import admin_notifications
from models import Url
def notification():
    broken_links = Url.objects.filter(status=False).count()
    if broken_links:
        return "You have %s broken link%s.<br>You can view or fix them using the <a href='/admin/linkcheck/'>Link Manager</a>." % (broken_links, "s" if broken_links>1 else "")
    else:
        return ''

admin_notifications.register(notification)

Project details


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-notifications-0.6.3.tar.gz (3.3 kB view hashes)

Uploaded Source

Supported by

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