Skip to main content

Django JSON Schema Field Validator

https://app.travis-ci.com/chrislawlor/jsonfield-validation.svg?branch=master Documentation Status

JSON Schema validation for Django JSONField.

Quickstart

Installation

pip install jsonfield-validation

Usage

from jsonfield_validation import JsonSchemaValidator


class MyModel(models.Model):
    items = models.JSONField(
        validators=[
            JsonSchemaValidator({"maxItems": 2})
        ]
    )

Like any Django model field validator, validation happens when clean_fields() is called on a model instance:

>>> instance = MyModel(items=[1, 2, 3])
>>> instance.clean_fields()

django.core.exceptions.ValidationError: {'items': ["[1, 2, 3] is too long"]}

Further documentation is gratiously hosted by Read the Docs

Credits

This package was created with Cookiecutter and the pymetrics/cookiecutter-python-library project template.

History

0.3.0 (2022-06-15)

  • Add path to invalid value to error_list message,

0.2.0 (2022-06-15)

  • Add check method.

0.1.0 (2022-06-14)

  • First release on PyPI.

Metadata

Release files for jsonfield-validation 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jsonfield-validation 0.3.0
File Size Uploaded
jsonfield_validation-0.3.0.tar.gz 13.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jsonfield-validation 0.3.0
File Interpreter ABI Platform
jsonfield_validation-0.3.0-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 18.2 kB

Release files / jsonfield_validation-0.3.0.tar.gz

Download URL jsonfield_validation-0.3.0.tar.gz
Size 13.4 kB
Tags Source
SHA-256 checksum
How to use checksums
ca63959d76d0b54cab904faa922cd7c93ba680e61bc051ee41dd873108fb123a
BLAKE2b-256 checksum
How to use checksums
9076a5da1f3f7ee53daac40728765936ad130e235f0ea3b495a9743a47f42fde
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.0

Release files / jsonfield_validation-0.3.0-py2.py3-none-any.whl

Download URL jsonfield_validation-0.3.0-py2.py3-none-any.whl
Size 4.8 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
077478c4ab292d4012e62c8f7cab06730297e023a72303cacf569b4cc47dc5ba
BLAKE2b-256 checksum
How to use checksums
9e15659127732e24cbd4f2460e7dda4f80c54f8d7a1881a7791888a87a2c38a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.0

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page