Как получить данные из базы данных mongodb без моделей в django?

Моя проблема в том, что моя база данных слишком велика, и я не хочу создавать никаких моделей

поскольку он унаследован, и мне придется динамически вызывать различные таблицы,

поэтому я просто хочу получить данные из него. Возможно ли это в Django?

Вместо того, чтобы использовать Django ORM для выполнения запросов, вы можете использовать SQL, с курсором подключения.

Как видно из следующего примера кода:

from django.db import connection

def custom_sql(self):
    cursor = connection.cursor()
    cursor.execute("SELECT * FROM legacy_table where id=1") # or another SQL
    row = cursor.fetchall()
    return row

Но, если вы хотите использовать Django ORM, вам нужно создать модель с опцией Meta managed=False, как в следующем примере:

class LegacyTableModel(models.Model):
    # fields

    class Meta:
        managed = False

При managed=False для этой модели не будут выполняться операции по созданию, изменению или удалению таблиц базы данных. Это полезно, если модель представляет существующую таблицу или представление базы данных, которое было создано другим способом. Документация

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