Convert django models to sensible json format
Project description
Django JSON Serializer
This is a django serializer that outputs sensible json to be sent to the frontend, rather than intended as a serializer to a file. Here’s an example:
>>> print s.serialize(User.objects.all(), relations=['groups'], excludes=['user_permissions'], indent=4) [ { "username": "dusty", "first_name": "", "last_name": "", "is_active": true, "is_superuser": true, "is_staff": true, "last_login": "2010-11-26 13:27:07", "groups": [ { "pk": 1, "model": "auth.group", "name": "hello", "permissions": [] } ], "pk": 1, "model": "auth.user", "password": "sha1$8f816$b4c8139100c314b46f1ca931858e4d6d5c61917f", "email": "dusty@linux.ca", "date_joined": "2010-11-22 17:55:40" } ]
The default serializer (djason.json) spits out a list of objects as a string. You can optionally have it return that list wrapped in an HttpResponse object by passing the httpresponse=True option into serialize.
There is a second serializer that takes two optional parameters, attributes (a dict) and list_name (a string). This serializer returns a dictionary with any key value attributes in the attributes dictionary, and one extra attribute named list_name, which contains the list of objects as returned by the json serializer. For example:
>>> print s.serialize(User.objects.all(), relations=['groups'], excludes=['user_permissions'], indent=4, attributes={'somekey': 'somevalue'}, list_name="users") { "somekey": "somevalue", "users": [ { "username": "dusty", "first_name": "", "last_name": "", "is_active": true, "is_superuser": true, "is_staff": true, "last_login": "2010-11-26 13:27:07", "groups": [ { "pk": 1, "model": "auth.group", "name": "hello", "permissions": [] } ], "pk": 1, "model": "auth.user", "password": "sha1$8f816$b4c8139100c314b46f1ca931858e4d6d5c61917f", "email": "dusty@linux.ca", "date_joined": "2010-11-22 17:55:40" } ] }
This project was originally forked from: https://code.google.com/p/wadofstuff/wiki/DjangoFullSerializers
The original code produced a json format that was good for ./manage.py dump and load, but wasn’t as suitable for sending data to a web client for processing via ajax.
What’s new
Version 0.2 - Added a serializer that allows including the serialized object inside an object with extra attributes - Added an ‘httpresponse’ option that will automatically wrap the serialized stream in an HttpResponse object Version 0.1
First public released
forked from https://code.google.com/p/wadofstuff/wiki/DjangoFullSerializers
patched with https://code.google.com/p/wadofstuff/issues/detail?id=4
Modified to output more sensible json for client consumption
Turned it into a django app
Added a template tag for rendering raw django
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file djason-0.2.1.tar.gz
.
File metadata
- Download URL: djason-0.2.1.tar.gz
- Upload date:
- Size: 6.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea52ab35e7a9f6e392d6b01ca0cd911abf8baba971c43a6b58fcede63b63497a |
|
MD5 | f08ae76c35caeb38a72428c932c7f3b6 |
|
BLAKE2b-256 | c0009ce9c13eb883236892c182e878f13ce43b996709fe4e46a67ee49d72cd97 |
File details
Details for the file djason-0.2.1.linux-i686.tar.gz
.
File metadata
- Download URL: djason-0.2.1.linux-i686.tar.gz
- Upload date:
- Size: 15.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cf7941add51129b343127f8294849e788b2de091738f89907e64624bcb94f4d9 |
|
MD5 | ab6e59680e4f6d995300bf55b52358d5 |
|
BLAKE2b-256 | 41db9f948266878315e0c7e88996f2f025ece4054c3d4423b1dc91c43c9c12a1 |