前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >接口测试平台代码实现97:全局域名-4

接口测试平台代码实现97:全局域名-4

作者头像
我去热饭
发布2022-05-19 09:30:50
5980
发布2022-05-19 09:30:50
举报
文章被收录于专栏:测试开发干货

上节课我们成功的搞定了host域名管理相关的部分。本节我们要开始弄公共请求头了。

大家会不会有一种,不知道要怎么下手的感觉,其实很简单。我们可以看下目前的结构,我们在下面写一个全局域名。其实整体设计和全局请求头基本一致,只是当中的标签id 数据字段 函数名需要更改。前端如此,urls.py,和views.py还有models.py基本都是复制粘贴全局请求头的,这样不就简单了么?

不要怀疑这种借鉴抄袭copy的方法,这其实是最正常和常见的方法,谁还能天天写什么都需要去创新,去创造,去设计?那不累死了。就算博主我也是大部分都是借鉴自己之前的项目内方法,写的时候稍微加上一些灵光一闪的设计变化而已。毕竟我们最高级的程序员 往往会使用最简单的code方式:

ctrl+c / v

我们先去models.py中搞定这个全局域名的数据层设计:

然后执行那两句命令:

然后去admin.py:

最后去后台 手动创建俩条数据:

到此。我们的数据层设计完成,demo也弄了两条。怎么样,这个路线记住了么?

然后是后台views.py中设置:

如上图,我们不管三七二十一,反正看到全局请求头加上了,那我们给全局host也加上,准没错。

然后是发现全局请求头有自己的个保存函数,我们直接无脑复制了。

如上图,下面那个就是我们准备要动手改成全局域名host的函数:

改成如下即可:

代码语言:javascript
复制
# 保存项目公共域名
def save_project_host(request):
    project_id = request.GET['project_id']
    req_names = request.GET['req_names']
    req_hosts = request.GET['req_hosts']
    req_ids = request.GET['req_ids']
    names = req_names.split(',')
    hosts = req_hosts.split(',')
    ids = req_ids.split(',')
    for i in range(len(ids)):
        if names[i] != '':
            if ids[i] == 'new':
                DB_project_host.objects.create(project_id=project_id,name=names[i],host=hosts[i])
            else:
                DB_project_host.objects.filter(id=ids[i]).update(name=names[i],host=hosts[i])
        else:
            try:
                DB_project_host.objects.filter(id=ids[i]).delete()
            except:
                pass
    return HttpResponse('')

其实我只是把其中的key和value俩个字段 换成了 host字段而已。

然后我们去改urls.py,怎么样是不是感觉,整个开发过程和之前逆转过来了?其实根本没有必须的顺序,自己怎么舒服怎么来。

本节到此就结束了,下节我们ctrl+v html层的全局域名

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

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

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

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

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