从 Django 中动态 view.py 的引导手风琴菜单中获取数据



我的网站中有一个手风琴菜单,它有类别、子类别和文章,我希望能够看到用户点击了哪个类别、子类别和文章,并根据这些条件过滤我的模型,是类别中子类别中的文章。

我首先尝试将手风琴的链接放在一个表单中并命名每个链接, 但这只会弄乱它在屏幕上的显示方式.

前端手风琴:

<!-- COllapsible sidebar -->
<div class="container-fluid">
    <div class="row">
        <div class="col-md-3 col-xs-1 " id="sidebar">
            <div class="list-group panel">
                <a href="#menu1" class="list-group-item collapsed" data-toggle="collapse" data-parent="#sidebar" aria-expanded="false"><i class="fa fa-dashboard"></i> <span class="hidden-sm-down">Item 1</span> </a>
                <div class="collapse" id="menu1">
                    <a href="#menu1sub1" class="list-group-item" data-toggle="collapse" aria-expanded="false">Subitem 1 </a>
                    <div class="collapse" id="menu1sub1">
                        <a href="#" class="list-group-item" data-parent="#menu1sub1">Subitem 1 a</a>
                        <a href="#" class="list-group-item" data-parent="#menu1sub1">Subitem 2 b</a>
                        
                        <a href="#menu1sub1sub1" class="list-group-item" data-toggle="collapse" aria-expanded="false">Subitem 3 c </a>
                        <div class="collapse" id="menu1sub1sub1">
                            <a href="#" class="list-group-item" data-parent="#menu1sub1sub1">Subitem 3 c.1</a>
                            <a href="#" class="list-group-item" data-parent="#menu1sub1sub1">Subitem 3 c.2</a>
                            
                            <a href="#menu1sub1sub1sub1" class="list-group-item" data-toggle="collapse" aria-expanded="false">Subitem 3 c.3 </a>
                            <div class="collapse" id="menu1sub1sub1sub1">
                                <a href="#" class="list-group-item" data-parent="#menu1sub1sub1">Subitem 3 c.1</a>
                                <a href="#" class="list-group-item" data-parent="#menu1sub1sub1">Subitem 3 c.2</a>
                            </div>
                        </div>
                        <a href="#" class="list-group-item" data-parent="#menu1sub1">Subitem 4 d</a>
                        <a href="#menu1sub1sub2" class="list-group-item" data-toggle="collapse"  aria-expanded="false">Subitem 5 e </a>
                        <div class="collapse" id="menu1sub1sub2">
                            <a href="#" class="list-group-item" data-parent="#menu1sub1sub2">Subitem 5 e.1</a>
                            <a href="#" class="list-group-item" data-parent="#menu1sub1sub2">Subitem 5 e.2</a>
                        </div>
                    </div>
                    <a href="#" class="list-group-item" data-parent="#menu1">Subitem 2</a>
                    <a href="#" class="list-group-item" data-parent="#menu1">Subitem 3</a>
                </div>
            </div>
        </div>
    </div>
</div>

任何获得我想要的东西的建议或替代途径也值得赞赏,我想要的只是能够根据 3 个条件从 views.py 过滤我的数据库,条件是类别、子类别和文章,它们是手风琴菜单中的分层步骤.

谢谢

大概你会在单击子项时返回视图,例如<a href="#" class="list-group-item" data-parent="#menu1sub1sub1">Subitem 3 c.1</a>如果您将其更改为 <a href="{% url 'show-item' item.id %}" class="list-group-item" data-parent="#menu1sub1sub1">Subitem 3 c.1</a>(假设您有一个合适的 URL(,就会显示它。

如果您特别需要上面的第 1 项、第 1 项等,您可以执行

<a href="{% url 'view-name' item1 subitem1 item.id %}" class="list-group-item" data-parent="#menu1sub1sub1">Subitem 3 c.1</a>

你需要一个类似这样的网址:path('myview/<str:item>/<str:subitem>/<int:item_id>/', views.MyView.as_view(), name="view-name")

最新更新