Django对表单进行增删改查
查
首先在url中写好路径

其次在后面参数的views里写函数类xxxxxxx的基本逻辑

定义一个函数xxxxxxx,继承request,注意这个request对数据库操作结果都会存放在request中
将Publisher类中的所有属性列出来,赋值给all_publishers
返回一个页面xxxxxxx.html,该页面里会将all_publishers展示出来
xxxxxxx.html页面如下

此页面根据数据库表来设计页面展示情况,特别注意的是,由于数据的以后会更多,不可能一一添加,使用模板语言for i in all_publishers(之前获取到的所有数据),将所有数据存放在i变量中
然后根据字段,分别以i.字段的形式循环展示出来,即可。
增
urls.py如下图所示

和上面一样,在view里面设置相应函数,在函数里面设立逻辑

首先在思路方面,首先考虑是否有请求方式的分类
get请求,用户会在点击添加按钮后,应跳转至一个新的页面add页面
post请求,用户在新的add页面添加是,会输入要添加的名称,然后点击提交按钮,添加的数据值会在数据库中name列添加相应的数据,然后返回publisher_list页面
相对应的模板html页

该表基本逻辑是当你点击添加时,会出现一个新的页面,该页面含有一个form表单,页面显示给用户一个图书出版社的添加相关页面。
删
urls.py

views.py

该逻辑和后面编辑(改)的逻辑相似,首先分析,我要删除一个数据,首先要让后台知道,我要删除那条信息
views.py第二行代码中获取我要删除的数据,GET到我要删除那条数据的pk(主键也就是ID),获取记录,然后在数据库中找到这条记录然后删除、
最后删除后继续重定向到列表页
改
urls.py

views.py

逻辑分析:在列表中对一个数据进行修改,首先明白以下流程:
html中添加编辑按钮后,点击编辑按钮后,会出现一个新的页面,新的页面就是编辑页。里面有一个form表单,表示对数据进行编辑,需要注意的是编辑框中需要包含原来的数据,在用户进行修改后,会将该数据在数据库中进行修改并且保存,最后返回列表页
逻辑清楚后开始完成,首先要获取你要删除那条数据,然后将你的操作记录下来在数据库里找到这条数据()
1如果是GET请求,返回一个包含原来数据的form表单页。
2,在post请求中,找到用户提交的数据,将获取到的数据在数据库中修改相应的名字,不要忘了修改后要对数据库进行保存,最后返回list页面。
Django对表单进行增删改查的更多相关文章
- Django框架(八)--单表增删改查,在Python脚本中调用Django环境
一.数据库连接配置 如果连接的是pycharm默认的Sqlite,不用改动,使用默认配置即可 如果连接mysql,需要在配置文件中的setting中进行配置: 将DATABASES={} 更新为 DA ...
- Django框架(九)—— 单表增删改查,在Python脚本中调用Django环境
目录 单表增删改查,在Python脚本中调用Django环境 一.数据库连接配置 二.orm创建表和字段 三.单表增删改查 1.增加数据 2.删除数据 3.修改数据 4.查询数据 四.在Python脚 ...
- django-orm框架表单的增删改查
08.14自我总结 django-orm框架 一.orm基本配置 1.创建django项目 命令行:cmd先去到django创建目录,然后输入django-admin startproject dja ...
- Mysql学习笔记(三)对表数据的增删改查。
正文内容. 这一部分是最简单的,也是最麻烦的.简单是因为其实只包括增删该插四个部分.大体上看,增加数据.删除数据.修改数据.查询数据都不麻烦啊,我们日常都是常用的.这个谁不会呢?以前在培训机构学mys ...
- vue.js带复选框表单的增删改查
近段时间由于公司项目要求,前端开始使用VUE框架进行开发,最近刚开始学习,做了一个表单的增删改查,和大家分享一下. 页面模型代码设计如下 <template> <div id=&qu ...
- Mysql入门-对表数据的增删改查
这一部分是最简单的,也是最麻烦的.简单是因为其实只包括增删该插四个部分.大体上看,增加数据.删除数据.修改数据.查询数据都不麻烦啊,我们日常都是常用的.这个谁不会呢?以前在培训机构学mysql的时候, ...
- $Django orm增删改字段、建表 ,单表增删改查,Django请求生命周期
1 orm介绍 ORM是什么 ORM 是 python编程语言后端web框架 Django的核心思想,“Object Relational Mapping”,即对象-关系映射,简称ORM. 一 ...
- Django ORM基本的单表增删改查
创建表 步骤: 1.app下models.py里创建类(继承models.Model) from django.db import models class UserInfo(models.Model ...
- Python学习---django之ORM的增删改查180125
模型常用的字段类型参数 <1> CharField #字符串字段, 用于较短的字符串. #CharField 要求必须有一个参数 maxlength, 用于从数 ...
随机推荐
- hdfs中数据迁移
1.hdfs集群间数据迁移 hadoop distcp hdfs://192.128.112.66:8020/user/hive/warehouse/data.db/dwi_xxxx_d /user ...
- java js转码
public static String escape(String src) { int i; char j; StringBuffer tmp = new StringBuffer(); tmp. ...
- go defer关键字使用规则
defer 用于延迟函数的调用,每次defer都会把一个函数压入栈中,函数返回前再把延迟的函数取出并执行 数据结构 type _defer struct { sp uintptr //函数栈指针 pc ...
- Ubuntu 16.04 + Win10双系统 启动Ubuntu进入命令行 无界面
Ubuntu 16.04 + Win10双系统,启动Ubuntu时候报错,并入命令行(无界面). 原因:可能是双系统兼容性问题 解决办法: 重启系统,进入Win10 然后在Win10中重启电脑. 重启 ...
- 博观约取系列 ~ 探测Bert Finetune对向量空间的影响
熟悉NLP的同学对Bert Finetune一定不陌生,基本啥任务上来都可以Bert Finetune试一把.可是模型微调一定比直接使用预训练模型效果好么?微调究竟对Bert的向量空间产生了哪些影响嘞 ...
- JS 根据id实现局部打印
// 打印初审收费清单 getOrderCostBille(){ var head_str = "<html><head><title> ...
- hyperf从零开始构建微服务(一)——构建服务提供者
阅读目录 什么是服务 构建服务提供者 1.创建数据表 2.构建服务提供者 3.安装json rpc依赖 4.安装rpc server组件 5.修改server配置 6.配置数据库 7.编写基础代码 7 ...
- Shiro03
1.shiro授权角色.权限 2.Shiro的注解式开发 shiro权限思路 授权 ShiroUserMapper中定义两个方法 // 通过用户ID查询角色 Set<String> get ...
- Linux上项目部署在home目录中无法访问的问题
在Linux上开发一个Web项目,使用nginx作为Web服务器.在nginx的配置文件中添加一个server,root路径写的是放在home目录中的项目目录的路径.打开浏览器访问,提示错误:403 ...
- python库--pandas--MultiIndex
*表示后面会重复用到此参数 创建层次化索引 pd.MultiIndex 构造器 MI levels 每个级别不重复的标签 labels 每个级别的整数指定每个位置 *sortorder=None ...