Django 标签筛选的实现代码(一对多、多对多)

实现的目标(一对多)

实现针对课程实现:课程类型、难度级别、是否隐藏三个方式的筛选

每一个视频文件有针对一个课程类型、一个难度级别、是否隐藏

设计数据库如下:

URL文件:

(\d+))-(?P(\d+))-(?P(\d+))',

后台程序文件:

前台展示文件:

Title
筛选
{% if kwargs.Video_type_id == 0%} {% else %} 全部 {% endif %} {% for i in VideoType_list %} {% if i.id == kwargs.Video_type_id %} {% else %} {{ i.Video_Type }} {% endif %} {% endfor %}
{% if kwargs.Video_dif_id == 0%} {% else %} 全部 {% endif %} {% for i in VideoDif_list %} {% if i.id == kwargs.Video_dif_id %} {% else %} {{ i.Video_dif }} {% endif %} {% endfor %}
{% if kwargs.display == 0 %} 全部 {% else %} 全部 {% endif %} {% for item in display_list %} {% if item.id == kwargs.display %} {{ item.name }} {% else %} {{ item.name }} {% endif %} {% endfor %}

结果

{% for row in video_list %}

{{ row.Video_title }}

{% endfor %}

前台通过变化active标签,实现选中的显示,通过a标签中的数字控制后台筛选操作

实现的目标(多对多)

实现针对课程实现:课程方向、课程类型、难度级别三个方式的筛选

其中每个课程方向中包含有多个课程类型,选择课程方向后,筛选课程方向包含的所有课程类型

每一个视频文件有针对一个课程类型、一个难度级别

设计数据库如下,在一对多的基础上增加了一个多对多的课程方向表:

URL文件:

(\d+))-(?P(\d+))-(?P(\d+))',]

后台程序文件:

前台展示文件:

Title
筛选
{% if kwargs.Video_group_id == 0%} {% else %} 全部 {% endif %} {% for item in group_list %} {% if item.id == kwargs.Video_group_id %} {{ item.Video_group }} {% else %} {{ item.Video_group }} {% endif %} {% endfor %}
{% if kwargs.Video_type_id == 0%} {% else %} 全部 {% endif %} {% for item in VideoType_list %} {% if item.id == kwargs.Video_type_id %} {{ item.Video_Type }} {% else %} {{ item.Video_Type }} {% endif %} {% endfor %}
{% if kwargs.Video_dif_id == 0%} {% else %} 全部 {% endif %} {% for item in VideoDif_list %} {% if item.id == kwargs.Video_dif_id %} {{ item.Video_dif }} {% else %} {{ item.Video_dif }} {% endif %} {% endfor %}

结果

{% for item in video_list %}

{{ item.Video_title }}

{% endfor %}

总结

以上所述是小编给大家介绍的Django 标签筛选的实现代码(一对多、多对多),希望对大家有所帮助。程序员遇到问题都会上(编程之家jb51.cc)查找问题解答方法!如果觉得站点还不错,随手转发给程序员朋友一下!

相关文章

如何选择合适的 C++ Web 开发框架?
利用 C++ 框架构建高并发 Web 应用的策略
用 C++ 框架开发跨平台图形应用程序
golang框架中安全编码实践的最佳指南是什么?
golang框架与其他语言框架在设计理念上的区别有哪些?
C++ 图形框架与其他语言框架的比较