Django 对实体的增删改查样例
class UserInfo(models.Model):
"""
人员信息
"""
user_id = models.CharField(max_length=20, primary_key=True, blank=False, verbose_name='人员ID')
user_name = models.CharField(max_length=200, blank=False, verbose_name='姓名')
sex = models.CharField(max_length=20, blank=False, verbose_name='性别')
id_num = models.CharField(max_length=20, blank=False, verbose_name='身份证号')
zzmm = models.CharField(max_length=100, default='3', verbose_name='政治面貌') class Meta:
db_table = 'NRLJ_USER_INFO_1' ----方法展示
from django.shortcuts import get_object_or_404 # 查询全部
users = UserInfo.objects.all() # 查询单个
user = UserInfo.objects.get(user_id='123') # 新增
user = UserInfo(user_id='123', user_name='张三', sex='男', id_num='123456', zzmm='1' )
user.save() # 更新
user = get_object_or_404(UserInfo, user_id='123')
user.user_name = '李四'
user.save() # 删除
user = get_object_or_404(UserInfo, user_id='123')
user.delete() 这里的 get_object_or_404() 是 Django 提供的快捷方法,
用于在数据库中获取某个对象,如果对象不存在,就返回 404 错误页面。
在这里, get_object_or_404() 方法用于获取数据库中
user_id = '123' 的用户对象,如果不存在,就返回 404 错误页面。 在Django中,可以通过在查询中使用Q对象,在query参数中加入多个查询条件,实现多条件查询。 例如,假设我们要查询性别为男性、政治面貌为群众的人员信息: from django.db.models import Q users = UserInfo.objects.filter(Q(sex='男') & Q(zzmm='群众')) Q对象用于表示一个查询条件,&表示逻辑与操作,表示满足两个条件同时成立;|表示逻辑或操作,表示满足两个条件中的一个即可。多个Q对象可以组合使用,实现复杂的查询逻辑。 当然,除了使用Q对象之外,也可以直接在查询条件中传入多个参数,例如: users = UserInfo.objects.filter(sex='男', zzmm='群众') 这两种方法并没有明显的优劣之分,可以根据具体情况进行选择。
Django 对实体的增删改查样例的更多相关文章
- 最简单的mybatis增删改查样例
最简单的mybatis增删改查样例 Book.java package com.bookstore.app; import java.io.Serializable; public class Boo ...
- 使用EF自带的EntityState枚举和自定义枚举实现单个和多个实体的增删改查
本文目录 使用EntityState枚举实现单个实体的增/删/改 增加:DbSet.Add = > EntityState.Added 标记实体为未改变:EntityState.Unchange ...
- Django框架简单搭建增删改查页面 Django请求生命周期流程图
目录 Django框架简单搭建增删改查页面 一.前期的配置文件以及连接MySQL的基本准备 二.在数据库中准备好数据 三.将MySQL的数据展示到页面(简单认识HTML模板语法 for循环) 在Dja ...
- Django之数据表增删改查
Django数据增删改查: 上课代码 from django.shortcuts import render,HttpResponse # Create your views here. from a ...
- Python学习---django之ORM的增删改查180125
模型常用的字段类型参数 <1> CharField #字符串字段, 用于较短的字符串. #CharField 要求必须有一个参数 maxlength, 用于从数 ...
- Django基于类的增删改查,简单逻辑都不用写
Django是Python中一个非常牛逼的web框架,他帮我们做了很多事,里边也提前封装了很多牛逼的功能,用起来简直不要太爽,在写网站的过程中,增删改查这几个基本的功能我们是经常会用到,Django把 ...
- django -- ORM实现作者增删改查
前戏 前面我们已经实现了出版社的增删改查,书的增删改查,书和出版社的对应关系.现在来写一下作者的增删改查和书的对应关系,那书和作者有什么关系呢?一个作者可以写多本书,一本书可以有多个作者,所以书和作者 ...
- django -- ORM实现图书增删改查
表结构设计 上篇我们实现了出版社的增删改查,出版社数据表有两个字段id和name,那图书的表结构怎么设计呢?图书也要有一个主键id,还要有一个名称title,是哪个出版社的,要有个字段press和Pr ...
- django -- ORM实现出版社增删改查
前戏 我们来完成一个图书管理系统的增删改查 表结构设计 1. 出版社 id name 2. 作者 id name 3. 书 id title 出版社_id 4. 作者_书_关系表 id 书 ...
- Django连接数据库(mysql)与Django ORM实操(增删改查) 前端页面
目录 一:pycharm链接数据库(MySQL) 1.pycharm右侧Database工具栏 2.下载对应的驱动,填写MySQL数据库信息连接(当前为客户端) 3.pycharm连接MySQL数据库 ...
随机推荐
- Netty内置的http报文解码流程
netty解码 netty通过内置处理器HttpRequestDecoder和HttpObjectAggregator对Http请求报文进行解码之后,Netty会将Http请求封装成一个FullHtt ...
- Head First Java学习:第八章-接口和抽象类
第八章:接口和抽象类 深入多态 1.抽象类:有些类不应该被初始化 在类声明前面加上抽象类的关键字,abstract. 防止类被初始化,即不能被"new"创建该类的实例(要求) 还是 ...
- SpringBoot-Validate优雅的实现参数校验,详细示例~
1.是什么? 它简化了 Java Bean Validation 的集成.Java Bean Validation 通过 JSR 380,也称为 Bean Validation 2.0,是一种标准化的 ...
- 华企盾DSC服务器无法启动常见处理方法
先查看<服务问题判断>文档.常见的 1.授权已经过期--需延长授权 2.ERR_BASE64 – 机器码变更 3.不能在该计算机上使用该数据库,需要解锁才可以--打开服务器配置解锁数据库 ...
- NLP复习之N元文法
N元文法的统计 二元概率方程: \[P(w_n|w_{n-1}) = \frac{C(w_{n-1}w_n)}{C(w_{n-1})} \] 三元概率估计方程: \[P(w_n|w_{n-2},w_{ ...
- 在WInform开发中实现工具栏/菜单的动态呈现
在Winform系统开发中,为了对系统的工具栏/菜单进行动态的控制,我们对系统的工具栏/菜单进行动态配置,这样可以把系统的功能弹性发挥到极致.通过动态工具栏/菜单的配置方式,我们可以很容易的为系统新增 ...
- selenium之鼠标键盘操作
鼠标操作 1.引入ActionChains类 2.定位相关元素 3.在ActionChains().调用相关鼠标操作方法 from selenium.webdriver.common.action_c ...
- postman——下载与安装
一.postman是什么? 那么,Postman是个什么东东呢?Postman的官网上这么介绍它:"Modern software is built on APIs,Postman help ...
- 【C# 技术】C# 常用排序方式
前言 在最近的项目中经常会对C#中的数据进行排序,对于基本数据类型,其排序方式比较简单,只需要调用内置算法即可实现,但对于自定义数据类型以及自定义排序规则的情况实现起来就比较麻烦,所以在本文章中将 ...
- MySQL 基础(三)事务与 MVCC
事务 事务是一组原子性的 SQL 操作,或者被称为一个独立的工作单元,如果数据库引擎能够成功地对数据库应用该组的全部 SQL 语句,那么就会全部执行,否则全部不执行. 事务的特性 在关系数据库管理系统 ...