前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >从零搭建一个django项目-12-首页模糊搜索功能

从零搭建一个django项目-12-首页模糊搜索功能

作者头像
怪盗LYL
发布2022-06-13 13:27:10
5270
发布2022-06-13 13:27:10
举报
文章被收录于专栏:测试开发真货测试开发真货
  • 首先找到我们的模糊搜索的输入框,<el-input class="ss-input" placeholder="模糊搜索,请输入关键字" v-model='ss_input' />,这里介绍下oninput事件对象,oninput 事件在用户输入时触发。
  • 添加oninput="Search_act(event)"
代码语言:javascript
复制
<el-input class="ss-input" oninput="Search_act(ss_input)"  placeholder="模糊搜索,请输入关键字" v-model='ss_input' />

vue中使用@input <el-input class="ss-input" @input="Search_act($event)" placeholder="模糊搜索,请输入关键字" v-model='ss_input' />

代码语言:javascript
复制
Search_act(e) {
        alert(e);
      },
代码语言:javascript
复制
Search_act(event) {
				axios.get('http://localhost:8000/api/geturl', {					params:{						event:event
					},					headers: {						'content-type': 'application/json',						"AUTHORIZATION": 'jwt '+this.$cookies.get("login-token") //token换成从缓存获取
					}}).then((response) => {						this.v_hrefs = response.data.all_href;
					}).catch(err => {					console.log('操作失败' + err);
				})
			},
  • 还是调用geturl接口,只是传了一个参数,现在修改下接口函数
代码语言:javascript
复制
class geturl(APIView):
    authentication_classes = [JwtAuthorizationAuthentication, ]
    def get(self, request, *args, **kwargs):
        index = request.GET.get("event",None)        if index ==None or len(index)==0:
            all_href = DB_href.objects.all().values()        else:
            all_href = DB_href.objects.filter(name__icontains=index).values()        return Response({"all_href":all_href})
  • 如果没有参数或者参数长度为0则查询所有,如果有参数则模糊搜索,字段加上__icontains表示忽略大小写模糊搜索,__contains 则是不忽略大小写的模糊搜索相当于like。
  • 之前加的token校验,返回没有做处理,加上返回码判断如果是403则调用退出函数

修改token测试一下,清除cookie退出了。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-06-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试开发真货 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档