django将搜索信息存入redis中

1. redis

链接:https://pan.baidu.com/s/1bH5_ky2UnglBZMLvqU3eRQ
提取码:yt86
解压后进入文件夹 进入命令行窗口
启动redis: redis-server.exe redis.windows.conf
在这里插入图片描述
如图就启动成功了。端口号是:6379

2. redis可视化工具

链接:https://pan.baidu.com/s/1e4Ya3LuIKMngQDAd7kpzbg
提取码:pss6

在这里插入图片描述

3.前端

django项目的创建及配置在这里就不讲了。整个项目的下载地址:

https://download.csdn.net/download/qq_39008205/20377519
或者
百度云盘地址:
链接:https://pan.baidu.com/s/1VT_m4Lxw2OxU94evemPHOg
提取码:6666

前端用到了jquery。所做的就是将输入的查询条件通过ajax传给后端。
在这里插入图片描述
index.html

<html>
  <head>
    <meta charset="utf-8">
    <title></title>
    <script type="text/javascript" src="../static/jquery-3.3.1.js"></script>
    <script type="text/javascript" src="../static/bootstrap.js"></script>
    <link rel="stylesheet" href="../static/bootstrap.css">
  </head>
  <body>
    <div style="padding: 100px 100px 10px;">
 		<div class="row">
 			<div class="col-lg-6 col-md-offset-3">
 				<div class="input-group" style="display:flex">
          		   <select class="form-control" id="province" style="width:100px" name="province">
  			       	<option value="辽宁">辽宁</option>
  			       	<option value="黑龙江">黑龙江</option>
  			       	<option value="吉林">吉林</option>
  		           	<option value="北京">北京</option>
  			       	<option value="山东">山东</option>
              	 	<option value="河北">河北</option>
               		<option value="河南">河南</option>
               		<option value="陕西">陕西</option>
               		<option value="山西">山西</option>
               		<option value="湖北">湖北</option>
  		    </select>
 					<input type="text" class="form-control col-lg-2"        style="float:left;width:400px" id="keyword" name="keyword">
          <button type="submit" class="btn btn-primary" id="search">搜索</button>
 				</div><!-- /input-group -->
 			</div><!-- /.col-lg-6 --><br>
 		</div><!-- /.row -->
 </div>
  <script>
   $(document).ready(function(){
   $("#search").click(function(){
      let province = $("#province").val();
      let keyword = $("#keyword").val();
      console.log(province,keyword)
      $.ajax({
    		url: "/index/",
    		type: "POST",
   			data: {
    			'province':province,
    			'keyword':keyword
    		},
    		success: function (data) {
     			alert("搜索成功")
   			}
		});
     })
})
  </script>
  </body>
</html>

  • 引入 bootstrap jquery-3.3.1等
  • 画出一个下拉选 value对应省份名 id为province
  • 输入框 id 为keyword
  • 搜索按钮 id 为search
  • jquery通过id选择器获得province 和 keyword
  • 按钮点击事件触发函数 通过ajax将province 和 keyword提交到后端

4. 后端

  • 接收前端传来的数据
  • 连接redis,将数据存入到redis中
import redis
pool = redis.ConnectionPool(host='127.0.0.1', port=6379, password=None)
r = redis.Redis(connection_pool=pool)

def index(request):
    if request.method == "POST":
        province=request.POST.get("province")
        keyword = request.POST.get("keyword")
        redis_list = r.lrange(f'keyword_list:{province}', 0, -1)
        url_list = list(map(lambda x: x.decode('utf-8'), redis_list))
        if keyword in url_list:
            return
        else:
            print(111)
            r.rpush(f"keyword_list:{province}", keyword)
        return JsonResponse({"post":"post"})
    else:
        return render(request, 'index.html')
  • 连接redis:pool = redis.ConnectionPool(host=‘127.0.0.1’, port=6379, password=None)
    prot对应redis端口

在这里插入图片描述
可以在可视化工具中发现我刚才搜索的内容已经存入了
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值