A reusable Django field that allows you to store validated JSON in your model.
Project description
django-jsonfield
django-jsonfield is a reusable Django field that allows you to store validated JSON in your model.
It silently takes care of serialization. To use, simply add the field to one of your models.
Install
pip install jsonfield
Usage
from django.db import models
from jsonfield import JSONField
class MyModel(models.Model):
json = JSONField()
Advanced Usage
By default python deserializes json into dict objects. This behavior differs from the standard json behavior because python dicts do not have ordered keys.
To overcome this limitation and keep the sort order of OrderedDict keys the deserialisation can be adjusted on model initialisation:
import collections
class MyModel(models.Model):
json = JSONField(load_kwargs={'object_pairs_hook': collections.OrderedDict})
Other Fields
jsonfield.JSONCharField
If you need to use your JSON field in an index or other constraint, you can use JSONCharField which subclasses CharField instead of TextField. You’ll also need to specify a max_length parameter if you use this field.
Contact
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
File details
Details for the file jsonfield-0.9.9.tar.gz
.
File metadata
- Download URL: jsonfield-0.9.9.tar.gz
- Upload date:
- Size: 5.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9a778841a72908f79c6b604f603d1b76e4d67b0718e642dd180eecfcd9c7425a |
|
MD5 | bd33a249e34565cb039c0e6aab6b8c3e |
|
BLAKE2b-256 | d4becc5fcf210b7e2d0d80c90cd8bada1e380eecd8d9f085b12d53f922b40daf |