Как написать пользовательский бэкэнд реляционной базы данных django
Мое приложение django должно поддерживать данные, поступающие из источника данных, поддерживаемого Composite Software. Composite предоставляет свои данные через jdbc/odbc, но использует нестандартный синтаксис sql. Я попытался использовать django-pyodbc в качестве внутреннего движка, но он сразу выдает ошибку при инициализации соединения, так как отправляет жестко запрограммированные команды инициализации в синтаксисе, который Composite не поддерживает (например, SET ...
).
Очевидно, что самый простой способ заставить это работать - просто написать код непосредственно для pyodbc. Но прежде чем идти по этому пути, я хотел бы изучить возможность написания собственного бэкенда. Я видел пару django-backend шаблонов, написанных для нереляционных backends. Однако я не смог найти аналогичный шаблон для реляционных баз данных. Существует ли такая вещь? Любые другие рекомендации?
1 ответ
Я думаю, что реляционный бэкэнд SQLite довольно прост, если вы хотите пойти по этому пути, может быть, посмотрите https://github.com/django/django/blob/master/django/db/backends/sqlite3/base.py