首页 > 其他分享 >Django 对实体的增删改查样例

Django 对实体的增删改查样例

时间:2023-04-13 10:47:53浏览次数:37  
标签:name models 样例 改查 Django 404 UserInfo id user

 
 
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='群众')

这两种方法并没有明显的优劣之分,可以根据具体情况进行选择。

 

标签:name,models,样例,改查,Django,404,UserInfo,id,user
From: https://www.cnblogs.com/yclh/p/17312589.html

相关文章

  • django 配置admin 数据管理,增加数据批量上传下载功能
    在使用django-admin带来直接管理数据库带来的便利的同时,我们希望数据能批量上传,为了达到此目的,我们需要django-admin-export 模块一、安装模块pip3installdjango-import-export-ihttps://mirrors.aliyun.com/pypi/simple/二、settings.py注册模块INSTALLED_APPS=......
  • mybatisPlus-增删改查
    引入依赖<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.or......
  • Django自带的Admin后台中如何获取当前登录用户
    需求背景在使用Django快速开发一个IT电脑、显示器资产管理小系统的时候,遇到一个问题是,当变更资产设备(新增、修改、删除)的时候,能记录是谁在什么时间进行的变更。确认的是肯定是登录状态,但是在使用Django的signal中获取不到当前登录的用户问题演示1、定义资产设备模型和 自定义日志......
  • 在django中自动删除超过10天的数据
    需求:比如过期10天的产品自动删除记录posting_date=models.DateTimeField(auto_now_add=True)#purge_old_data.pyfromdjango.core.management.baseimportBaseCommand,CommandErrorfromcus_leads.modelsimportCustomerLeadsfromdatetimeimportdatetime,timedel......
  • djangoadmin 过期显示红色字体
    参考:https://docs.djangoproject.com/en/1.8/topics/i18n/timezones/#naive-and-aware-datetime-objects起因:正常的dateime.now()得到的日期不能和Django数据库里面存储的日期数据做对比,两个解决办法:1、是把Django配置里面的USE_TZ设置成False,这样Django的数据就没有时区信息了......
  • Django框架基础(1)
    一、Django的历史1、Django是什么?  Django是使用Python语言开发的一款免费而且开源的Web应用框架。  由于Python语言的跨平台性,所以Django同样支持Windows、Linux和Mac系统。  在Python语言炽手可热的当下,Django也迅速的崛起,在Web开发领域占有一席之......
  • sqlalchemy快速插入数据,scoped_session线程安全,加载类上的装饰器,基本增删改查,django中
    今日内容sqlalchemy快速插入数据sqlalchemy是什么orm框架,跟其他web框架没有必然联系,可以独立使用安装,快速使用,执行原生sql创建表和删除表不能创建数据库不能修改字段(增加,删除)使用orm插入第一步:生成engine对象engine=create_engine("mysql+pymysql://[email protected].......
  • Django配置邮件发送
    需求用户点击忘记密码后会向邮箱发送验证码,之后用户进行验证并修改密码实现步骤登录qq邮箱,点击设置,配置配置IMAP/SMTP点击开启,之后发送短信,成功发送后会看到如下内容在settings.py文件中添加如下内容#MAILEMAIL_HOST='smtp.qq.com'EMAIL_PORT=587#或465EMAIL_......
  • flask框架06 sqlalchemy使用 scoped_session线程安全 一对多 多对多 增删改查
    今日内容详细目录今日内容详细1sqlalchemy快速插入数据2scoped_session线程安全2.1基本使用2.2加在类上的装饰器3基本增删查改3.1基本增删查改和高级查询3.2原生sql3.3django中执行原生sql4一对多4.1表模型4.2新增和基于对象的查询5多对多5.1表模型5.2增加和基于......
  • ros-python学习样例笔记
    1.通信基本原理介绍待写2.三种通信方式的程序样例(python版)2.1topic通信方式(非自定义和自定义)2.1.1创建工作空间和topic功能包在ubuntu中打开命令行,输入下面的命令创建并初始化工作空间,一定要回到XXX_ws的目录下初始化工作空间#创建工作空间文件夹my_ros(一般命名......