前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >接口测试平台代码实现14:注册功能和后台管理

接口测试平台代码实现14:注册功能和后台管理

作者头像
我去热饭
发布2022-05-19 08:31:38
6120
发布2022-05-19 08:31:38
举报
文章被收录于专栏:测试开发干货

本节先说说我们上节课的弊端,就是我们在测试的时候,很难先测试登陆状态去访问/home/ 然后再测试非登陆状态去访问/home/这条用例。

当时我们并没有退出登陆功能,所以要么请求其他同事访问,要么换浏览器,要么清空cookie。比较麻烦。不过本节后,就可以实现退出功能了。

首先我们打开welcome.html,准备在这个菜单页面加上 退出登陆的按钮。

之所以要在welcome上放退出按钮,就是因为这个菜单是全局公共的,任何页面都可以看到它,自然也就看到它上面的退出按钮了。

好,打开welcome.html。

让我们想想给按钮放在哪比较好,一般要么是左上角,要么是右上角。

我们就放在右上角吧,放在主页按钮下面,我们之后把这些功能按钮全都一股脑的塞到右上角,整合成一个小整体 之后样式上还能更有作为。

如上图所示,给原来的主页按钮 外面包裹一层 div。并把其中的 float:right 这个属性给移动到div身上。这个属性证明是让其靠当前父级元素的最右侧。

刷新页面发现基本没什么变化。

然后 复制这个a标签,改文案为 退出 。并在中间加上一个br标签 作为换行。

刷新页面看看效果:

注意border-radius属性的运用,这个是按钮的圆角,主页按钮不需要圆角了。退出按钮的左下角是圆角。

然后我们修正退出按钮的超链接,从/home/改成 /logout/

然后去urls.py中补充好该映射:

注意这个细节,urls.py中的url,前面只有^ 没有 / 。

而html中的url 都是前后都/

这个细节千万别弄错了。

然后我们去views.py中去写logout函数:

然后想想我们这个函数要用来做什么?

  1. 调用django的内部函数auth.logout函数 来实现退出功能。
  2. 给用户跳转到登陆页面。

开始实现:

这里我们是可以直接用HttpResponseRedirect重定向函数 给直接重定到登陆页面/login/的。因我前面讲了,如果是a标签的href 或者form表单提交 这种会触发页面刷新的情况,后端函数都可以直接让用户重定向。但是如果是异步请求$.get() 则不可以。

我们现在确保服务启动中,刷新页面,可以尝试一下。

结果是的确退出了,并且自动跳回到登陆页面!

非常迅速,cookie全自动清楚了。不信你不点登陆,直接进入/home/看看能不能进去,肯定进不去然后又自动回到登陆页面。

看了看进度条,今天内容貌似有点少。

接下来我们要讲讲django的自带后台!

其实django早就有自带后台了,在你刚启动成功的第一次就有,只是你一直不知道。现在我们直接进入网址:127.0.0.1:8000/admin/

就进入了一个后台的登陆页面,是不是很神奇?居然藏着这样一个地方可以管理所有平台数据和用户!

好的 这里我们只能通过管理员账号密码 来登陆。但是我们貌似并不知道管理员账号是什么?我们之前自己注册的都只是普通用户,根本无权限登陆这个后台。那么我们要如何创建超级管理员呢?答案是通过 命令行 输入命令的方式 创建第一个超级管理员。

打开pycahrm的Terminal ,专门用来让你输入shell命令的:

然后输入一下ls ,windows用户输入dir ,看看现在是不是在你的项目根目录下,就是可以看到manage.py的。

我们很早就说了,django的各种命令都是通过 manage.py来完成的,它就像一个大管家。现在创建超级管理员的命令也依然调用它,

输入:

代码语言:javascript
复制
python3 manage.py createsuperuser

然后它问你 这个超管的用户名是什么?你直接输入你自己的名字全拼,然后依次输入邮箱,密码,确认密码。

按照上图,我给大家翻译一下:我先输入名字后,让我输入邮箱,我输入完成后,让我输入密码,此时不要怀疑自己的手,密码输入进去就是不显示的!然后凭着记忆,再输入一次!如果提示你错误,就是你输入错了,按照后续提示重新输入就可以,大不了ctrl+c 强制退出,然后再createsuperuser一遍。

然后它给我疯狂红色警告,说我密码太简单了。但是它马上就问你,是否就用这个简单的密码?你输入 y 按回车。就会提示你创建成功。然后切换回浏览器,等它自动重启。然后输入刚刚创建的超管用户名密码。登陆看看:

这么简单我们就进来了呢!

上面是groups用户组,也就是说我们实际上可以给用户分组,然后不同的组赋予不同的权利。

下面Users是用户表。我们点进去看看:

可以看到我们创建的俩个账户都在这,一个超管,一个普通用户。我们可以手动在这里 设置各个用户的信息,包括增删改查!

这个后台的用处 还有处理其他数据。不过我们目前没有其他数据,所以只展示了用户组和用户表。

后续我们会经常使用这个平台的。

最后我们要记住这个后台的网址:/admin/

今天分享到这了。小伙伴们最近的积极反馈很多!跟得上的也很多。等到升职加薪了,别忘了宣传一波哈~

预告:本平台的实际讲解的代码会持续更新到github上,欢迎大家到时候每天下载和提供各种新的设计 分支。让我们一起维护这个超级接口测试平台吧~ 以后简历上我们也是维护过开源项目的人了~,地址下节课奉上!

关于技术书籍,需要改动的地方太多,目前并未走到售卖阶段。等可以上架了第一时间给大家分享哈~ 大概是五本,接口测试平台只是其中一本哦~

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档