@nurzhannogerbek

Как создать древовидную структуру в Django?

Здравствуйте! Помогите пожалуйста разобраться.

Пытаюсь создать дерево со списком документов c возможностью их перетаскивания как на рисунке.
5a3aac45b4e8e807551449.png

Использую СУБД Oracle в своем Джанго проекте. Чтобы создать подобный древовидный список необходимо хранить данные в иерархическом виде. Будет ли правильно использовать шаблон проектирования "Closure Table"? Хочу узнать ваше мнение о том как правильно спроектировать модель данных в Джанго.

В "Сlose Table" по теории должно быть две таблицы. В одной храниться информация о документе. Во второй таблице указывается потомки (descendent), предки (ancestor) и уровень вложенности (level). При перетаскивание документов меняется местоположение, поэтому думаю использовать поле position. Не могу понять как должна выглядеть модель данных для таблицы Documents. Должен ли быть какой-то внешний ключ и как составлять QuerySet с подобными таблицами (к примеру вывести список документов в иерархическом порядке)? Как видите вопросов много, хочется узнать ваше мнение о подобной задаче.
5a3aae4e99dc6916345736.jpeg
  • Вопрос задан
  • 1386 просмотров
Решения вопроса 1
fox_12
@fox_12 Куратор тега Django
Расставляю биты, управляю заряженными частицами
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы