обновление древовидной структуры в моделях django

#django #sqlite #django-models #tree

#django #sqlite #django-модели #дерево

Вопрос:

У меня есть это дерево узлов, которые я должен хранить в базе данных sqlite. Я использую это дерево как кеш, поэтому я должен иметь возможность быстро читать, но также я собираюсь периодически обновлять его. Я видел django-treebeard , в котором есть несколько простых в использовании функций, но я все еще не уверен в части обновления. Есть ли лучшая библиотека для этого случая? или какова наилучшая реализация обновления, которую я могу добавить к django-treebeard функциям?

Ответ №1:

Я использую django-mptt в своих проектах, когда у меня есть какая-то древовидная архитектура.

MPTT — это метод хранения иерархических данных в базе данных. Цель состоит в том, чтобы сделать операции поиска очень эффективными.

Компромисс для этой эффективности заключается в том, что выполнение вставок и перемещение элементов по дереву более сложны, поскольку требуется дополнительная работа для поддержания древовидной структуры в хорошем состоянии в любое время.

— Из README