Как использовать Postgres и MongoDB одновременно в Django?

Я ищу решение для работы с Postgres и MongoDB одновременно в моем Django проекте.

У меня есть большие данные, которые я хотел бы хранить в MongoDB и Postgres для управления пользователями, выставления счетов и других вещей для управления.

Я пытался использовать библиотеку pip install django, которая устарела, и не смог найти никакого решения. Пожалуйста, помогите мне найти подлинное решение! Спасибо

Прежде всего, для установки более новой версии Django вы можете использовать pip install Django==<version>, но вам нужно посмотреть совместимость с версией Python, которую вы используете в вашей системе и виртуальной среде. Например, для Python 3.x я использую немного более старую версию Django 2.2.21.

Во-вторых, Django не поддерживает MongoDB нативно, но команда MongoDB сама предоставляет библиотеку под названием pymongo, которую вы можете установить, но с pymongo вам придется писать больше нативных mongodb запросов. У них нет никакой Django ORM.

Но есть еще одна библиотека под названием mongoengine, которая фактически построена поверх pymongo и является очень удобной и близкой к ORM, которую Django предоставляет для реляционных баз данных.

В-третьих, о Postgres Вы можете легко установить любую реляционную базу данных с Django, поскольку он обеспечивает встроенную поддержку реляционных баз данных. Обе базы данных полностью независимы друг от друга, поэтому не должно возникнуть никаких проблем с настройкой.

Я сам использую Postgres и MongoDB вместе в своих проектах, и никогда не сталкивался ни с одной проблемой. Хотя, иногда немного сложно создавать вещи для NoSQL баз данных в Django, которые Django уже предоставляет для реляционных баз данных, но да, немного дополнительного кода в виде переопределения базовых классов Django для обеспечения поддержки mongodb всегда работает.

Вернуться на верх