In Python I use:
Class JsonResponse from
djangosnippets.org:
-----------------------------------
# -*- coding: utf-8 -*-
from django.http import HttpResponse
from django.utils import simplejson
from django.core.serializers.json import DjangoJSONEncoder
class JsonResponse(HttpResponse):
def __init__(self, obj):
self.original_obj = obj
HttpResponse.__init__(self, self.serialize(),
content_type='text/javascript')
#self["Content-Type"] = "text/javascript"
def serialize(self):
return(simplejson.dumps(self.original_obj,
cls=DjangoJSONEncoder))
-------------------------------------
View eg. in views.py is like:
-------------------------------------
def a_something(request):
return JsonResponse({'message': 'bla bla bla',
'code':324})
-------------------------------------
Javascript:
-------------------------------------
$.ajax({url:COMMON_URLS.test_url,
type: 'GET',
dataType: 'json',
error: function(data){ alert('Error: '+data); },
success: function(data){ alert('OK! '+data.message+',
'+data.code); }
});
-------------------------------------
COMMON_URLS.test_url is something like below, defined in your
template:
-------------------------------------
<script type="text/javascript">
COMMON_URLS = {
test_url:'{% url a_something_id %}'
}
</script>
-------------------------------------
urls.py like:
-------------------------------------
url(r'^a_something/$', 'views.a_something',
name='a_something_id'),
-------------------------------------