如何在模板中包含带有django mptt的下拉菜单
我想能够创建使用管理面板下拉菜单。此时,在模型中,我可以选择子页面是否是另一个页面的子页面,以及它应该以什么顺序显示。但我不知道如何在模板中实现所有这些。有人能帮忙吗 型号:如何在模板中包含带有django mptt的下拉菜单,django,django-models,django-templates,django-mptt,mptt,Django,Django Models,Django Templates,Django Mptt,Mptt,我想能够创建使用管理面板下拉菜单。此时,在模型中,我可以选择子页面是否是另一个页面的子页面,以及它应该以什么顺序显示。但我不知道如何在模板中实现所有这些。有人能帮忙吗 型号: class子页面(MPTTModel): title=models.CharField(最大长度=254) slug=models.SlugField(unique=True) 显示顺序=models.IntegerField(默认值=1) parent=treeforeingkey('self',verbose_name
class子页面(MPTTModel):
title=models.CharField(最大长度=254)
slug=models.SlugField(unique=True)
显示顺序=models.IntegerField(默认值=1)
parent=treeforeingkey('self',verbose_name='is child:',on_delete=models.CASCADE,null=True,blank=True)
视图:
def生成页面(请求,slug):
唯一子页面=获取对象或404(子页面,slug=slug)
homepage=homepage.objects.first()
subpage\u sorted=subpage.objects.exclude(is\u active=False).order\u by('display\u order'))
上下文={
“唯一子页面”:唯一子页面,
“子页面已排序”:子页面已排序,
“主页”:主页,
}
如果unique\u subpage.is\u active或unique\u subpage.slug==“admin”:
返回呈现(请求'subpage.html',上下文)
其他:
返回呈现(请求'404.html',上下文)
模板:
{%recursetree子页面\u排序%}
{%如果不是node.is_child_node%}
{%elif node.is_child_node%}
{%endif%}
{%endrecursetree%}
此代码可能会得到改进,因此请修改(在我的项目中工作):
{%recursetree thecategories%}
{%if node.level==0%}
{%如果不是node.is_leaf_node%}
-
{%else%}
-
{%endif%}
{%else%}
{%如果不是node.is_leaf_node%}
-
{%else%}
-
{%endif%}
{%endif%}
{%如果不是node.is_leaf_node%}
{{儿童}
{%endif%}
{%endrecursetree%}