This is an extension to django.contrib.postgres.fields.JSONField
, that works on other
databases than PostgreSQL.
- On MySQL and MariaDB, it uses the native JSON data type and supports most features.
- On SQLite and all other databases, it just stores JSON strings in a text field and does not support querying.
This is tested against:
- Python 3.4 to 3.7
- Django 2.0 to 2.2
- MySQL 5.7 (only on Django 2.1+)
- MariaDB 10.3
- PostgreSQL 9.4
- SQLite (no querying funcationality)
Just use our drop-in replacement for JSONField:
from django.db import models from jsonfallback.fields import FallbackJSONField class Book(models.Model): data = FallbackJSONField() def __str__(self): return str(self.data['title'])
The code in this repository is published under the terms of the Apache License. See the LICENSE file for the complete license text.
This project is maintained by Raphael Michel <mail@raphaelmichel.de>. See the AUTHORS file for a list of all the awesome folks who contributed to this project.