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数据库 ...
随机推荐
- python循环语句(二)
Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串. 知识点:for循环的语法格式如下: for iterating_var in sequence: statements(s) ...
- 网安靶场环境_DVWA-读取文件报错File not found! Cookie中有两个security键
DVWA-文件包含漏洞-读取文件报错-ERROR: File not found! Cookie中有两个security键 1 问题复现 (1)登录DVMA后,设置DVWA Security为Low. ...
- 【Buildroot】工具包使用
一.测试环境 开发板:rv1126 buildroot版本:2018.02-rc3 二..mk规则 PKG_NAME:定义软件包的名称.通常与软件包源代码的目录名相同. PKG_VERSION:定义软 ...
- 2023计算机保研经验贴 直博向(南大cs,计算所,科大高研院,浙大cs,交大cs,国科cs,北大cs,清华cs)
写在前面 本人作为普通选手,只能将个人经验分享一二,不能代表其他人的想法和意见,望路过的大佬们高抬贵手-,如果有相关老师或者同学认为我违反了保密条例请与我私信联系,我会第一时间删除相关内容. 个人情况 ...
- 华企盾DSC导致金蝶导入Excel导入不了的问题
需要把Excel的OLE控制关掉,并且金蝶的进程和Excel的进程高级设置要么都启用重定向,要么都不启用重定向
- [转]NLog学习笔记
配置文件 NLog所有的配置信息都可以写到一个单独的xml文件中,也可以在程序代码中进行配置. 配置文件位置 启动的时候,NLog会试图查找配置文件完成自动配置,查找的文件依次如下(找到配置信息则结束 ...
- Spring Batch 的基本使用
简介 A lightweight, comprehensive batch framework designed to enable the development of robust batch a ...
- Ynoi
P4688 [Ynoi2016] 掉进兔子洞 序列,静态,求三个区间的可重集的交的大小,离线,\(n,Q\le 10^5\),3s,500MB 缺乏性质 \(\rightarrow\) bitset ...
- 文心一言 VS 讯飞星火 VS chatgpt (40)-- 算法导论5.4 4题
四.一次聚会需要邀请多少人,才能让其中 3 人的生日很可能相同? 文心一言: 为了解决这个问题,我们需要先计算出所有可能的生日组合数,然后计算出其中生日相同的组合数. 已知需要邀请的人数为:23人 根 ...
- 25、Flutter中基本路由
Flutter 路由介绍 Flutter中的路由通俗的讲就是页面跳转.在Flutter中通过Navigator组件管理路由导航. 并提供了管理堆栈的方法.如:Navigator.push和Naviga ...