Login

jsonify template filter

Author:
skam
Posted:
April 25, 2007
Language:
Python
Version:
.96
Tags:
template filter json
Score:
7 (after 7 ratings)

Simple template filter to encode a variable to JSON format

Usage:

{% load json_filters %}

{% block content %} &lt;script type="text/javascript"&gt;<![CDATA[ var items = {{ items|jsonify }}; ]]>&lt;/script&gt; {% endblock %}

I'm using JsonResponse for the views but I also want to have preloaded JSON data into the page output

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
from django.core.serializers import serialize
from django.db.models.query import QuerySet
from django.utils import simplejson
from django.template import Library

register = Library()

def jsonify(object):
    if isinstance(object, QuerySet):
        return serialize('json', object)
    return simplejson.dumps(object)

register.filter('jsonify', jsonify)

More like this

  1. Django template object jsonify by nmk 6 years, 5 months ago
  2. Template filter that divides a list into exact columns by davmuz 3 years, 4 months ago
  3. Google Maps Templatetag by javinievas 7 years, 11 months ago
  4. Hide Emails by epicserve 6 years, 2 months ago
  5. Decode HTML Template Tag by megamark16 3 years, 2 months ago

Comments

sk1p (on July 10, 2007):

if you pass simplejson.dumps a kwarg cls=django.core.serializers.json.DjangoJSONEncoder you get handling of datetime objects and decimals for free

#

vdboor (on September 12, 2010):

You may want to use mark_safe on the results. In Django 1.2 I get HTML escaped quotation marks.

#

Please login first before commenting.