位置: 编程技术 - 正文

一个基于flask的web应用诞生 用户注册功能开发(5)(flask完整项目实例)

编辑:rootadmin

推荐整理分享一个基于flask的web应用诞生 用户注册功能开发(5)(flask完整项目实例),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:flask完整项目实例,flask搭建,flask基础,flask例程,使用flask开发简单博客,基于flask的开源项目,基于flask框架,基于flask的开源项目,内容如对您有帮助,希望把文章链接给更多的朋友!

下面把角色分为两种,普通用户和管理员用户,至少对于普通用户来说,直接修改DB是不可取的,要有用户注册的功能,下面就开始进行用户注册的开发。

用户表

首先要想好用户注册的时候需要提供什么信息:用户名、密码、昵称、邮箱、生日、性别、自我介绍,下面就按照这些信息修改用户模型:

然后使用脚本修改db

回车后界面显示内容为:

然后进行db差异的改动

这时看db中的表结构:

已经修改成功

注册界面

然后新建register.html模板,设置登录表单:

然后在default.py文件中新增register路由,代码为:

运行界面正常,然后增加post路由:

代码有点??拢?黄?粒???疽馔寄鼙泶锴宄??δ芤部梢允迪郑??衷诘奈侍饫戳耍?尤胛倚略鲆桓鲎侄危?敲葱枰?薷娜?Υ?耄?tml,form.get,校验),并且尤其是需要修改html,而且html部分没有验证,如果增加客户端验证的话,需要修改的会更多。那么有没有一个针对表单进行优化的工具呢,答案是当然有,轮到wtf登场了。

引入WTF表单框架

和之前一样,首先需要安装插件。

然后引入所需的包

下面创建一个表单RegisterForm:

修改register.html模板:

执行,输出结果:

一个基于flask的web应用诞生 用户注册功能开发(5)(flask完整项目实例)

阿欧,报错了,看看输出是什么错误:

注意红线一句,是CSRF错误,CSRF的概念可直接百度,知道问题了,其实也很好修改,在框架中增加一个秘钥就可以有效的防范了,在default.py中增加一行:

秘钥字符串可自定义

然后再次运行,出现界面:

并且包含验证bootstrap的验证样式,接下来继续改造default.py已完成此注册功能

注意此时已删除registerPost方法

好运行测试一下

点击提交:

阿欧,日期格式为啥不对?这个要从源码里看了:

这个是wtforms的field的源码,位于/wtforms/fields/core.py的行,可以看到,这里支持的日期格式为年-月-日格式,格式限定比较死,并且文本框没有用html5的date而是普通的text,解决办法以后再说,暂时先修改输入,改为-2-5,然后点击提交:

注意,由于代码中提交成功之后依然是返回到此页,并注入内容,所以显示没有问题,看看db中:

记录正常进入db,功能实现完成。

改善登录页

下面改造登录页,首先创建登录表单:

修改登录模板页:

修改路由方法:

重启服务,运行程序,输入zhangji和后,成功登录首页

回到首页

现在首页白茫茫的一片,什么内容都没有,正常的轻博客应该登录后显示发博按钮,已关注文章等,但首先要记录登录的状态,这些将在下一章说明。

本文链接地址:https://www.jiuchutong.com/biancheng/377119.html 转载请保留说明!

上一篇:一个基于flask的web应用诞生 flask和mysql相连(4)(基于flask框架)

下一篇:一个基于flask的web应用诞生 记录用户账户登录状态(6)(flask开发实例)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络