@vfvnvsyevsky

Как организовать хранение структуры категорий в модели Django?

Допустим есть категория, которая имеет надкатегории и подкатегории. Как организовать бд, чтобы можно было легко запросить надкатегории и подкатегории конкретной категории?
Сделал так:
category_nested = models.ManyToManyField('self', symmetrical=False)

Записываю только надкатегории, но сложно вытащить подкатегории. А два ManyToManyField django сделать не дает:

ERRORS:
items.Category.category_nested: (fields.E304) Reverse accessor for 'Category.category_nested' clashes with reverse accessor for 'Category.category_parrent'.
HINT: Add or change a related_name argument to the definition for 'Category.category_nested' or 'Category.category_parrent'.
items.Category.category_parrent: (fields.E304) Reverse accessor for 'Category.category_parrent' clashes with reverse accessor for 'Category.category_nested'.
  • Вопрос задан
  • 2739 просмотров
Решения вопроса 1
mututunus
@mututunus
Backend developer (Python, Golang)
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
leahch
@leahch
3D специалист. Dолго, Dорого, Dерьмово.
В свое время тоже мучились. В результате стали хранить просто в текстовом поле xlm со структурой. Плюсы - очень быстрая работа с вложенностью простым xpath, минусы - нет связанности на уровне базы, новедь есть сингалы для этого. Xml можно заменить на json.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы