py获取前端的参数_191205-02-删除-前端ajax

方式一,通过ajax来实现删除功能

发起请求时,需要传送图书id

首先完成视图函数的功能

接收数据

两种方式

1 直接获取json字符串

v2-488230229ee80f5d62665c31557ca29c_b.jpg

2,使用request对象的get_json()方法

v2-e781d6a4c16137a16a741d48716f982a_b.jpg

注意

如果是前端发ajax

需要和他约定好数据结构

本例中,和前端约好的发送数据的格式为:

{'book_id':图书id}

使用ajax发一个post请求

flask是可以接收post请求的

v2-f01a9d0a8014008963c1edaa1b6bdb7d_b.jpg

拿到图书id后

就需要从数据库中删除

删除的流程

  1. 找到图书行对易用
  2. session删除 delete(对象)
  3. session提交

v2-8761df209c9c2741467d4c7b5740ad16_b.jpg

删除内容后需要跳转

flask模块中的跳转函数

redirect(跳转的页面)

flask模块中的url_for

是反向解析

v2-7a8780e4d02ad9518a785575d39f90fe_b.jpg

url_for(视图名称)

返回视图函数所对应的路由名称

至此为止删除的所有操作了

接收数据

删除数据

页面跳转(用到了跳转的函数,和反向解析的函数)


后端完成后,就需要前端处理了

如果是前后端分离的情况

前端的是我们不用管的

只需要处理好后端就可以了

前端开始

首先即然是要删除图书

所以需要在删除的按钮上做一个事件

v2-d135ec5148a8bfa2ffacb28f4babc863_b.jpg

做相关的准备

写jquery需要导入静态文件

导入的位置

flask的模板默认为启动py程序同一级的templates目录

静态目录默认是static目录

因此我们可以直接在static目录中

把jquery添加进去

v2-128865f92c75b1fc77c88db426cd47e8_b.jpg

前端导入jquery

v2-72e95e18e6b277e25ecfd1690ec49e56_b.jpg

导入工作完成

下一步,准备jquery代码


v2-86450a53604aa30fa5e6e3c73ab659a4_b.jpg

可以给链接添加事件

v2-33c097a0103d569a63ec465ddea26a2c_b.jpg

当前的情况,给a标签添加了一个点击事件

点击会触发 deleteBook函数

函数体内要做的事情

1,获取图书的id

2,发送ajax请求

解决图书id的数据

因为前端没有

我们就自己把需要的内容塞在标签中

自定义了a标签的book-id后

就可在jquery中获取它的值了

v2-cc2de272ab58cb10d52053ef67ff6619_b.jpg

发送ajax的简写形式:

$.请求方式(网址,参数字典,回调函数)

比如要发送post请求

$.post(url,{},function(da){})

由于后端是等待接收一个json

所以前端 要发json

复习前端json与对象的转换

v2-be4efc919ac212baf7c88aaa7b95312f_b.jpg

v2-3e738d2e77ab5af8c48dbe97409d9696_b.jpg

v2-4fb34717602071b2bad26e5d1e72f92d_b.jpg

前端发请求要把数据转成json

方式上面回顾了

后端回响应也要回json

v2-8e6a299127f3deb0d8ca0df3cc1c3a03_b.jpg

可以用通用的

json.dumps(字典)方式来回复json

也可以用

flask.jsonify(键=值,键2=值2)

来回复一个json

v2-38a033081a99a6b098d25222ef5ae698_b.jpg

关于ajax的dataType

没有dataType时

v2-a94e0b16ad1107a60addc27d6db05ea2_b.jpg

如果有dataType

同时声明它是一个json

就可以省掉转换的操作步骤

v2-c29fdf7ceb9ca80b8fa00f83227ae670_b.jpg

v2-aa6bcfe1cd5a482f78cd18c3d6dbbbfe_b.jpg
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值