当前位置: 首页 > 后端技术 > Python

Django表单处理流程

时间:2023-03-26 18:41:11 Python

Django的表单处理:视图获取请求,做任何它需要做的事情,包括从模型中读取数据,然后生成并返回一个HTML页面(来自模板),我们传递一个context的数据。让事情变得更复杂的是,服务器还需要能够处理用户提供的数据并在出现任何错误时重新显示页面。下面是一张Django处理表单请求的流程图,从请求一个包含表单的页面开始(绿色显示):基于上图,Django处理表单的主要内容是:用户第一次请求,显示默认表单。表单可能包含空白字段(例如,如果您正在创建新记录),或者可能预填充了初始值(例如,如果您正在更改记录,或者有有用的默认初始值)。此时该表单被称为未绑定,因为它没有与任何用户输入的数据相关联(尽管它可能具有初始值)。从提交请求中接收数据并将其绑定到表单。将数据绑定到表单,就是当我们需要重新显示表单时,用户输入的数据和任何错误都是可用的。清理和验证数据。清理数据执行输入清理(例如,删除可能用于向服务器发送恶意内容的无效字符)并将其转换为一致的Python类型。验证检查值是否符合字段(例如,在正确的日期范围内,不太短或太长等)如果任何数据无效,重新显示表单,这次使用任何用户填写的值,以及问题领域。如果所有数据都有效,则执行必要的操作(如保存数据、发送表单和发送电子邮件、返回搜索结果、上传文件等)。当所有操作完成后,将用户重定向到另一个页。