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, 用于从数 ...
随机推荐
- 常见面试题:java8有什么新特性?
常见面试题:java8有什么新特性? 主要有以下这些新特性: lambda 表达式,经常配合函数式接口使用,可以有效减少代码量 Runnable 是一个函数式接口,下面展示了创建线程三种写法,显然最后 ...
- py2neo学习记录
py2neo 通用 # -*- coding: UTF-8 -*- from py2neo import Graph, Node, Relationship, walk, NodeMatcher, R ...
- mysql:刚刚知道的冷知识(一)
唯一索引的值可以null 1.创建一张user表,name字段指定为唯一索引 create table user( id int primary key auto_increment, name va ...
- Learning ROS: rqt_console和rqt_logger_level使用
rqt_console:操作.查看log信息 rqt_logger_level:设置log等级 打开node: rosrun rqt_console rqt_console rosrun rqt_lo ...
- SpringBoot笔记(1)
一.Spring能做什么 微服务 响应式开发 分布式云开发 web开发 无服务开发(云) 批处理业务等 二.SpringBoot作用 能快速创建出生产级别的Spring应用 SpringBoot是整合 ...
- JS 根据id实现局部打印
// 打印初审收费清单 getOrderCostBille(){ var head_str = "<html><head><title> ...
- 关于antd Select 限制选择个数的解决方案
应用场景描述: Select 被form 所包裹,且被getFieldDecorator修饰.所以值的改变应该通过form的setFieldsValue方法. Select模式肯定会是multiple ...
- spring boot 系列之八:SpringBoot处理定时任务
项目经常会用到定时任务,springboot自然是可以通过整合相关组件来实现的. 目前常用的定时任务的实现有两种: 通过spring 自带的定时器任务@Schedule来实现 通过Quartz来实现 ...
- Raid(0/1/5/10)
一.Raid需要的硬盘数量 1.raid 0: 最少1块硬盘(但是1块盘没有意义,至少2块才有实际意义) 2.raid 1: 最少2块硬盘 3.raid 5: 最少3块硬盘 4 ...
- Git 系列教程(6)- 查看 commit 提交历史
查看提交历史 在提交了若干更新,又或者克隆了某个项目之后,如何查看提交历史 git log 官方栗子 运行下面的命令获取该项目: git clone https://github.com/scha 运 ...