综合案例6-添加书籍逻辑1| 学习笔记

开发者学堂课程【Python Web 框架 Flask 快速入门综合案例6-添加书籍逻辑1】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/603/detail/8805


综合案例6-添加书籍逻辑1

内容简介

一、实现相关的增删逻辑

二、总结

一、实现相关的增删逻辑

a、增加数据,增加数据对于网页来讲就是增加内容然后提交。

在这里,要进行验证,首先要将验证逻辑写入:

1、调用 WTF 的函数实现验证。

2、验证通过获取数据。

3、判断作者是否存在。

4、如果作者存在,判断书籍是否存在,没有重复书籍就添加数据,如果重复就提示错误。

5、如果作者不存在,添加作者和书籍。

6、验证不通过就提示错误。

写完之后,修改

@app.route@app.route(‘/’,methods=[‘GET’,’POST’])

然后就可以实现验证逻辑了。

1、作者的书籍表单调用一个验证函数:

if author form.validate on submit():

pass 说明验证通过

else:说明验证失败。验证失败按照常规来讲,可以显示一个消息过去:else:flash(‘参数不全’)

回到页面刷新出现参数不全。因为没有判断请求方式,所以这时候一定要做 POST启用方式验证,flash 只有 POST 才显示,所以写入 POST

判断:if request.method== ‘POST’:

这就是验证不通过就提示错误。

中间 pass 如果验证通过获取数据,说明成功。成功之后就可以把相关参数获取一下:

如果从网页中取,网页中都属于表单,而在表单里可以找到作者,想要拿到内容的话写入author  name=author form.author.data

同样往下:book name=author form.book.data

这就是第二步拿到验证数据。

再往下判断作者是否存在,这里涉及到数据库的查询操作,查询作者名字是不是存在于数据库,写入

Author.query. filter by()

前面说过如果用 filter by 格式,里边就可以属性名等于内容:

Author.query. filter by(name=author name)

再往下要执行查询所以.

author=Author.query. filter by(name=author name.first()

如果查询到了就判断如果作者存在,

if author:这样写代表存在,

else:代表不存在,添加作者和书籍。

二、总结

实现添加数据的第一部分,添加逻辑的思路的分析,以及实现了第1到第6步,验证和验证不通过以及取得参数,在数据库里查询等。

上一篇:【AIX 命令学习】增加/减小逻辑卷的大小


下一篇:MySQL之最