Connector to use CrateDB as a database in Django ORM.
uv
uv add cratedb-djangopipx
pipx install cratedb-djangoOnce the library is installed, use it in your settings.py, e.g.
DATABASES = {
    "default": {
        "ENGINE": "cratedb_django",
        "SERVERS": ["localhost:4200"],
    }
}After that, for a model to be used in CrateDB, you need to use CrateModel as a base class.
from django.db import models
from cratedb_django.models import CrateModel
class Metrics(CrateModel):
    id = models.TextField(primary_key=True, db_default=UUID())
    value = models.IntegerField()Django migrations can be run in CrateDB, default django migrations are tested. In spite of that, we recommend that you run anything transactional in a transactional database, like PostgresSQL and use CrateDB as your analytical database.
- unique=True. CrateDB only supports unique constraints on primary keys, any model field with unique=true will emit a warning to stdout.
| name | value | description | 
|---|---|---|
| SUPPRESS_UNIQUE_CONSTRAINT_WARNING | [ true/false] | Suppresses warning when a model is created with unique=True constraint. | 
This project is open-source under a MIT license.