Skip to main content

Request-independent messaging for Django on top of contrib.messages

Project description

Almost like django.contrib.messages, but doesn’t need request to message a user.

In fact, django-dbmessages is but a very thin and simple layer on top of Django’s contrib.messages.

To message a user, you simply create and save an instance of provided Message model via shell, Django admin, or some other means.

Message model has all the same attributes you’d normally pass to contrib.messages (level, message, extra_tags), and in addition a ForeignKey link to User model.

The next time given user appears on the site, middleware provided by dbmessages checks if user has any messages for them, and adds them to request using regular contrib.messages API. Then it deletes those messages from the DB. Simple as that.

Quick start

  1. Make sure to enable Django’s contrib.messages in your project (check the docs).

  2. Install django-dbmessages (it’s on PyPI).

  3. Add 'dbmessages' to your INSTALLED_APPS and 'dbmessages.middleware.DBMessageMiddleware' to MIDDLEWARE_CLASSES.

  4. Synchronize (or migrate) the DB.

Now you can get into shell and address a message to yourself:

>>> from dbmessages.models import Message
>>> from django.contrib import messages
>>> Message.objects.create(to_user=your_user, level=messages.INFO, message="Ahoy there")

Provided your front-end is integrated with Django’s contrib.messages, you should see the “Ahoy there” message the next time you log in under your account.

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-dbmessages-0.1.1.tar.gz (6.7 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