[extensions-web] decorators: Add a way to pretty-print JSON
- From: Jasper St. Pierre <jstpierre src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [extensions-web] decorators: Add a way to pretty-print JSON
- Date: Tue, 4 Dec 2012 20:37:48 +0000 (UTC)
commit a86789998e3267ac9c7fd9ee916eedd5670f65f7
Author: Jasper St. Pierre <jstpierre mecheye net>
Date: Tue Dec 4 15:37:25 2012 -0500
decorators: Add a way to pretty-print JSON
sweettooth/decorators.py | 10 +++++++++-
1 files changed, 9 insertions(+), 1 deletions(-)
---
diff --git a/sweettooth/decorators.py b/sweettooth/decorators.py
index 339bd71..61b9bcc 100644
--- a/sweettooth/decorators.py
+++ b/sweettooth/decorators.py
@@ -15,14 +15,22 @@ def model_view(model):
return new_view
return inner
+def dump_json(response, pretty=False):
+ if pretty:
+ return json.dumps(response, indent=2, sort_keys=True)
+ else:
+ return json.dumps(response)
+
def ajax_view(view):
@functools.wraps(view)
def new_view(request, **kw):
+ pretty = request.GET.get('pretty', False)
+
response = view(request, **kw)
if response is None:
return HttpResponse()
if not isinstance(response, HttpResponse):
- response = HttpResponse(mark_safe(json.dumps(response)),
+ response = HttpResponse(mark_safe(dump_json(response, pretty)),
content_type="application/json")
return response
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]