接口测试平台-43:新增+删除 接口

1. 新增接口功能:

  • 找到html中的新增接口按钮,给它写一个href超链接,起个路由就叫:/project_api_add/项目id/ 
  • 去urls.py中写好映射 ,然后去views.py中写好后端函数 project_api_add(),当然这里小伙伴可以多练习,新建一个新的views_api.py 用来专门存放接口库的功能,不过本教程为了不增加额外学习成本,只在一个views.py中写好来,后续可以拆出去反正。

打开P_apis.html,找到新增接口按钮,增加onclick属性,用的是a标签的href属性:

<button onclick="document.location.href='/project_api_add/{{ project.id }}/'" type="button" class="btn btn-primary">新增接口</button> 

 

添加映射关系:

urls.py (Pid中,urls.py和views.py一定要一致,错一个字母都会报错类型不对)

url(r'^project_api_add/(?P<Pid>.*)/$', project_api_add),  # 新增接口

views.py,新建project_api_add()函数:

# 新增接口
def project_api_add(request, Pid):
    project_id = Pid
    DB_apis.objects.create(project_id=project_id)
    return HttpResponseRedirect('/apis/%s/' % project_id) 

注意:

  • 其中的orm新建数据的方法:create() 其中只写了所属项目id,其他十几项字段都没写就会默认为空或None
  • 最后返回时页面会刷新,所以要返回一个路由而不是什么json串或页面。这里用了强制重定向到项目接口库。
  • 如果不这样做, 那么新增接口后浏览器顶部的地址是:/project_api_add/项目id/  这样看起来没什么问题,但是如果这时候用户刷新页面,就会导致再次请求这个新增接口路由,导致更多意料之外的新接口诞生。
  • 所以这里强制转换路由为接口库初始:/apis/项目id/ ,这样用户怎么刷新也不会出现问题。
  • 后续很多href类这种会导致页面刷新的后端函数最好都如此重定向到初始路由,以免出现问题。

 

测试一下:

新增的接口成功出现且顶部浏览器地址栏依然是初始状态,即成功。

 

2. 删除接口功能

找到删除按钮,写一个href,其中要包含接口id

<button onclick="document.location.href='/project_api_del/{{ i.id }}/'" class="btn btn-danger">删除</button>

 

urls.py:

url(r'^project_api_del/(?P<id>.*)/$', project_api_del),  # 删除接口

 

views.py:

这里我们要用到delete()方法来删除数据库数据

 

# 删除接口
def project_api_del(request, id):
    project_id = DB_apis.objects.filter(id=id)[0].project_id
    DB_apis.objects.filter(id=id).delete()
    return HttpResponseRedirect('/apis/%s/' % project_id)

测试一下:

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值