sql >> Database >  >> RDS >> PostgreSQL

django postgresql json veldschema validatie

Ik heb een aangepaste validator geschreven met behulp van jsonschema om dit te doen.

project/validators.py

import django
from django.core.validators import BaseValidator
import jsonschema
    

class JSONSchemaValidator(BaseValidator):
    def compare(self, value, schema):
        try:
            jsonschema.validate(value, schema)
        except jsonschema.exceptions.ValidationError:
            raise django.core.exceptions.ValidationError(
                '%(value)s failed JSON schema check', params={'value': value}
            )

project/app/models.py

from django.db import models

from project.validators import JSONSchemaValidator

MY_JSON_FIELD_SCHEMA = {
    'schema': 'http://json-schema.org/draft-07/schema#',
    'type': 'object',
    'properties': {
        'my_key': {
            'type': 'string'
        }
    },
    'required': ['my_key']
}

class MyModel(models.Model):
    my_json_field = models.JSONField(
        default=dict,
        validators=[JSONSchemaValidator(limit_value=MY_JSON_FIELD_SCHEMA)]
    )


  1. hoe dataframe (R) naar Oracle-tabel te exporteren

  2. Hoe u elke N-de rij in MySQL kunt krijgen

  3. Hoe voorkom ik het gebruik van een MySQL-query in een While-lus in PHP?

  4. 3 manieren om alle tabellen te retourneren ZONDER een primaire sleutel in SQL Server