Flask(数据校验 七)
数据校验原因
由于有很多手段可以绕过前端往后端发送数据,所以后端需要对数据进行校验后才可以朝数据库插入
前台提供数据输入
写一个简单的提交信息的表单页面
1 |
|
后台接受表单
在写一个后台/register
路由数据获取部分
1 |
|
判断phone
存在
1 | if not phone: |
abort源码
1 | def abort(status, *args, **kwargs): |
1 | class Aborter(object): |
可以看到abort
其实就是调用了_aborter
也就是Aborter
的__call__
1 | mapping = default_exceptions |
它把上面全部的错误都添加进去了
下面看一下NotFound
1 | class NotFound(HTTPException): |
我们访问页面出现404的时候它的返回内容就是
code = 404
1 | description = ( |
校验数据
所以我们的phone
判断为
1 | if not phone: |
完整:
1 |
|
切换为中文
在页面上添加提示信息
<body>
<form>
之间添加{{ msg }}
1 | <body> |
使用abort
的第二种用法,返回Response
对象
1 | res = Response(render_template('register.html', msg='请输入电话号码'), |
也可以写成
1 | if not phone: |
效果是一样的