Привет!

Вопрос простой. Допустим, есть таски в виде дерева и теги у тасков. Так как просто добавлять теги нельзя (будет tree corruption при выборках), я решил сделать такую логику, чтобы теги родительских тасков были подмножеством тегов детей, но при этом чтобы дети могли иметь свои самостоятельные теги.

Таким образом это дерево будет валидным:

  • Задача 1; Тег 1
  • Задача 2; Тег 1, Тег 2
  • Задача 2; Тег 1, Тег 3
    • Задача 3; Тег 1, Тег 3, Тег 4

Проблема появляется тогда, когда хочется делать выборки по тегам. Несмотря на то, что при выборке по Тегу 2 в этом примере дерево никогда не будет сломано (не будет пустых нод между уровнями вложенности), MPTT template tags не хотят рендерить такое дерево, они просто не отображают его на странице. Видимо, потому что отсутствует корневая нода.

Как с этим бороться? Я вообще матчасть не знаю, поэтому лезть в MPTT просто боюсь.