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, 用于从数 ...
随机推荐
- 如何打一个RPM包
如何打一个RPM包 参考链接:RPM打包原理.示例.详解及备查 前言 本文只是一个RPM安装的例子,并没有对RPM做比较详尽的叙述,更为详尽的讲解,可以在上面的链接中找到. RPM是啥? RPM(Re ...
- Gogs (Go git server) 使用笔记
issue: 话题,一个新特性,BUG或其他关注的任何话题,都可创建issure,便于讨论,明确目标. label: 标签,一般用于描述issue的类型,如:bug.feature.enhanceme ...
- Google Chrome浏览器必备的20个插件
Google Chrome浏览器虽然与火狐浏览器有所区别,不过他们都是很开放的浏览器产品,所以也有许多有用的插件,这些插件对于日常生活与网络冲浪都很有用,比如网银,炒股等. Google Chrome ...
- vue 之 v-model
v-model虽然很像使用了双向数据绑定的 Angular 的 ng-model,但是 Vue 是单项数据流,v-model 只是语法糖而已: <input v-model="sth& ...
- 一、Rabbitmq的简单介绍
以下只是本人从零学习过程的整理 部分内容参考地址:https://www.cnblogs.com/ysocean/p/9240877.html 1.RabbitMQ的概念 RabbitMQ是实现了高级 ...
- Selenium4 IDE初体验
今天闲来无事,尝试了一番Selenium4的IDE,提供了录制和回放的功能.下面是对它的简单介绍. 安装 下载地址:https://www.selenium.dev/selenium-ide/ 在下载 ...
- 羽夏笔记——PE结构(不包含.Net)
写在前面 本笔记是由本人独自整理出来的,图片来源于网络.本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正. 如有好的建议,欢迎反馈.码字不易,如果本篇文章有帮助你 ...
- 性能测试工具JMeter 基础(四)—— 录制脚本
对于JMeter中HTTP请求除了手动添加以为还可以进行脚本录制,有两个方法: 使用badboy录制,录制完成后,将录制的文件导入JMeter中 使用JMeter自带的录制原件进行录制(HTTP(S) ...
- JAVA反序列化漏洞基础原理
JAVA反序列化漏洞基础原理 1.1 什么是序列化和反序列化? Java序列化是指把Java对象转换为字节序列的过程: Java反序列化是指把字节序列恢复为Java对象的过程: 1.2 为什么要序列化 ...
- 使用metaweblog API实现通用博客发布 之 API测试
使用metaweblog API实现通用博客发布 之 API测试 使用博客比较少,一则是文笔有限,怕写出的东西狗屁不通,有碍观瞻, 二则是懒,很讨厌要登录到网站上写东西,也没有那么多时间(借口).个人 ...