2018-10-08-Python全栈开发-day64-组合搜索2
html
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
head>
<body>
<h1>筛选h1>
<h3>方向h3>
{% for direction in direction_list %}
<a href="/sousuo-{{ direction.id }}-{{ kwargs.classification_id }}-{{ kwargs.level_id}}">{{ direction.name }}a>
{% endfor %}
<h3>分类h3>
{% for classification in classification_list %}
{% if classification.id in user_direction%}
<a class="active" href="/sousuo-{{ direction1.id }}-{{ classification.id }}-{{ kwargs.level_id}}">{{ classification.name }}a>
{% endif %}
{% endfor %}
<h3>难度h3>
{% for level in level_list %}
<a href="/sousuo-{{ direction1.id }}-{{ kwargs.id }}-{{ level.id}}">{{ level.title }}a>
{% endfor %}
<h1>结果h1>
{% for item in video %}
<p>{{ item.title }}p>
{% endfor %}
body>
html>
views
def sousuo(request, *args, **kwargs): # 传入一个字典,分别代表方向,分类,难度, dict = {} direction1={} for k, v in kwargs.items(): temp = int(v) if k=='id': direction1[k]=v else: if temp: dict[k] = temp print(dict) # 这里得到对应的值 user_direction1=models.Direction.objects.get(**direction1) # user_direction=user_direction1.classification.objects.filter('__classification_id=direction1[k]') user_direction=user_direction1.classification.values_list('id') user_direction=list(user_direction) user_direction=list(zip(*user_direction))[0]#得到对应分类的id print(user_direction) print(1) print(user_direction1) print(1) direction_list = models.Direction.objects.all() classification_list = models.Classification.objects.all() level_list = models.Level.objects.all() # video_list = models.Video.objects.filter(**dict) video_list = models.Video.objects.filter(**dict) return render(request, 'sousuo.html', { 'direction_list': direction_list, 'classification_list': classification_list, 'level_list': level_list, 'video': video_list, 'kwargs': kwargs, 'user_direction':user_direction, 'direction1':direction1 })