pycharm中django框架基础学习笔记(三)-基于python3

python3.7下pycharm中django学习笔记基于之菜鸡第三课

  • 真正的视图
    • 流程图
    • 代码
  • 处理用户输入
    • 流程:
    • 模板:添加HTML表单
    • 添加URLconfig项
    • 添加视图处理函数
  • 跨站点请求伪造
  • 模型表单:
    • 代码:
    • 处理ModelsForm数据

真正的视图

流程图

向数据库查询数据 -> 载入模板文件 -> 为模板创建上下文字典 -> 将上下文传递给模板 -> 将模板渲染到HTML中 -> 通过HTTP响应返回HTML

代码

接上节内容:
以下代码中还完成了最多显示且最新显示5篇博客的内容
修改排序的两种方法:
方法一:直接对数据类(继承自models.Model)使用order_by()方法,()内填写的排序的数据段名字(+:升序,-:降序).
方法二:在BlogPost类中增加内部类class Meta ,将类中的ording属性赋值为’-timeStamps’所在的一个单元元组---->设置默认的排序方式
pycharm中django框架基础学习笔记(三)-基于python3_第1张图片
对应的HTML:
pycharm中django框架基础学习笔记(三)-基于python3_第2张图片

处理用户输入

流程:

添加一个HTML表单(让用户可以输入) -> 插入(URL,视图)这样的URLconfig项 -> 创建视图来处理用户输入

模板:添加HTML表单

pycharm中django框架基础学习笔记(三)-基于python3_第3张图片

添加URLconfig项

blog应用中:
pycharm中django框架基础学习笔记(三)-基于python3_第4张图片
主应用中:
pycharm中django框架基础学习笔记(三)-基于python3_第5张图片

添加视图处理函数

pycharm中django框架基础学习笔记(三)-基于python3_第6张图片
添加数据完成后将回复重定向到/blog网页

跨站点请求伪造

由于使用了POST方法,所以在HTML表单标签后中要添加 {% csrf_token %},见上添加HTML表单处

模型表单:

代码:

pycharm中django框架基础学习笔记(三)-基于python3_第7张图片
pycharm中django框架基础学习笔记(三)-基于python3_第8张图片
pycharm中django框架基础学习笔记(三)-基于python3_第9张图片

处理ModelsForm数据

pycharm中django框架基础学习笔记(三)-基于python3_第10张图片
未完待续…

你可能感兴趣的:(Django,python,python,django)