Skip to main content
Join the official Python Developers Survey 2018 and win valuable prizes: Start the survey!

Json encode messages from the Django messages framework and dump them as JS

Project description

# django-json-messages
Add json encoded messages (from Django messages framework) to templates

# Install

```sh
pip install django-json-messages
```

# Usage

## Django messages

Make sure the [Django messages framework](https://docs.djangoproject.com/en/1.7/ref/contrib/messages/) is installed and working.

## App

Add `json_messages` to your list of `INSTALLED_APPS`

## Context processor

Add `json_messages.context_processors.json_messages` in your `CONTEXT_PROCESSORS` settings.

A `json_messages` property is now available on the context.

It is a dict version of the messages with `msg` and `type` keys

## Template tags

### Loading

Use `{% load json_messages %}` at the top of your template

### Json dump

Use `{% json_messages_dump %}` to simply dump the json encoded messages into your template

**Note** that all messages' `msg` properties are passed through Django's [escapejs](https://docs.djangoproject.com/en/dev/ref/templates/builtins/#escapejs) for security reasons.

### Script

Use `{% json_messages_script %}` to dump the messages array into a Javascript window variable called ` messages `

This is equivalent to writing

```
<script type="text/javascript">
window.messages = {% json_messages_dump %};
</script>
```

#### Configuration

- Set a context variable `js_variable` to override the name of the window variable use by `{% json_messages_script %}`
*Example:*
```
{% json_messages_script js_variable="blop" %}
```
results in
```
<script type="text/javascript">
window.blop = [{"type":"danger", "msg":"Something"}];
</script>
```
Defaults to *"messages"*


## Package dependencies

None

Project details


Release history Release notifications

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
django_json_messages-0.1.2-py2.py3-none-any.whl (5.4 kB) Copy SHA256 hash SHA256 Wheel py2.py3 Feb 25, 2015
django-json-messages-0.1.2.tar.gz (3.6 kB) Copy SHA256 hash SHA256 Source None Feb 25, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page