Проблема в запросе к БД (SQLite)
И так... Имееем:
lvl1 = lavel.objects.all().filter(lvl=3)
lvl2 = lavel.objects.all().filter(lvl=4)
lvl3 = lavel.objects.all().filter(lvl=5)
context = {
'Level1': lvl1,
'Level2': lvl2,
'Level3': lvl3,
}
return render(request, "blog/index.html", context=context)
В самом шаблоне:
{% for lvl1 in Level1 %}
# ...
{% for lvl2 in Level2.filter(owner=lvl1.owner) %}
# ...
{% endfor %}
{% endfor %}
Ошибка:
Could not parse the remainder: '(owner=lvl1.owner)' from 'Level2.filter(owner=lvl1.owner)'
Если это нужно, вот сама структура БД:
class lavel(models.Model):
owner = models.ForeignKey('self', null=True, on_delete=models.CASCADE)
lvl = models.IntegerField(null=True, default=0, verbose_name='Уровень')
alias = models.TextField(null=True, default='', verbose_name='Алиас')
title = models.TextField(null=True, default='', verbose_name='Заголовок')
txt = models.TextField(null=True, default='', verbose_name='Текст')
is_active = models.BooleanField(default=True, verbose_name='Пубикация')
Ну и немного доп. инфы:
По БД: реализовал метод "списки смежности" (owner ссылается на id той же сущности, что позволяет строить иерархию похожих объектов)
По цели: Сейчас пытаюсь вывести 3х-уровневую, разворачивающуюся менюшку, алгоритм сначала был описан на flask (вроде так пишется), затем перенесен на django (для меня было открытием в различии ginga-логики, но это все лирика). Вот, в преобразовании запроса с помощъю местной ORM случилась неведомая беда
Прошу помощи у более опытных/внимательных, за ранее всем спасибо, буду благодарен любой помощи