1.前端js根据选择进行url请求。
//顶部搜索栏搜索方法 function search_click(){ var type = $('#jsSelectOption').attr('data-value'), keywords = $('#search_keywords').val(), request_url = ''; if(keywords == ""){ return } if(type == "course"){ request_url = "/course/list?keywords="+keywords }else if(type == "teacher"){ request_url = "/org/teacher/list?keywords="+keywords }else if(type == "org"){ request_url = "/org/list?keywords="+keywords } window.location.href = request_url }2.url对应的view.py的代码添加关键词筛选:
# 设置全局课程搜索关键词 search_keywords = request.GET.get('keywords','') if search_keywords: all_courses = all_courses.filter(Q(name__icontains=search_keywords) | Q(desc__icontains=search_keywords) | Q(detail__icontains=search_keywords) )3.django会自动根据这个keywords进行数据匹配。
icontains不分大小写
contains区分大小写