首页 > 其他分享 >django学习笔记-ORM

django学习笔记-ORM

时间:2022-12-06 18:35:03浏览次数:37  
标签:py models ORM 笔记 django objects UserInfo 数据

0.安装第三方模块

pip install mysqlclient

1.ORM

1.1.创建数据库
  • 启动mysql服务
  • 自带工具创建数据库
create database demo01 DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
1.2.django连接数据库

在settings.py中进行配置与修改
修改相应的数据库名,数据库主机ip,用户和密码

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'demo01',
        'USER': 'root',
        'PASSWORD': 'xxx',
        'HOST': '192.168.233.128',
        'PORT': 3306,
    }
}
1.3.django操作表

在models.py中创建类

class UserInfo(models.Model):
    name = models.CharField(max_length=32)
    password = models.CharField(max_length=64)
    age = models.IntegerField()

执行命令:

python manage.py makemigrations
python manage.py migrate

就会创建如下的表:
image

增删表,增删字段都需要重新执行命令。
在表中新增列时,由于已存在列中可能已有数据,所以新增列必须要指定新增列对应的数据:

data1 = models.IntegerField(default=0)
data2 = models.IntegerField(null=True,blank=True)
1.4.django操作表的数据

1.新建数据

UserInfo.objects.create(name="张三", password="12345",age=19)

2.删除数据
删除某条数据

models.UserInfo.objects.filter(id=1).delete()

删除所有数据

models.UserInfo.objects.all().delete()

3.查询数据
查询某条数据

models.UserInfo.objects.filter(id=2)

查询所有数据

models.UserInfo.objects.all()

4.更新数据

models.UserInfo.objects.filter(id=2).update(password='999')

标签:py,models,ORM,笔记,django,objects,UserInfo,数据
From: https://www.cnblogs.com/CarlosX/p/16955466.html

相关文章

  • Canvas学习笔记(四)线条操作
    在Canvas中,常见的线条操作属性有:属性说明lineWidth定义线条宽度lineCap定义线帽样式lineJoin定义两个线条交接处的样式常见的线条操作方法有:方......
  • Django 管理 OpenVPN 账户
    由于公司办公网络不受我们管控,我们日常又需要远程拨入办公网络进行工作的需求,我们就选择了OpenVPN拨入公司网络的方案,为每位开发同事分发一个密钥文件,考虑后期维护的便捷......
  • [笔记]docker-compose启动javaweb
    1.Dockfile1准备jdk安装包启动项目jar2文件fromcentosrunmkdir/var/tmp/jdkCOPYjdk-8u321-linux-x64.tar.gz/var/tmp/jdkRUNtarxzf/var/tmp/jdk/jdk-8......
  • Raft笔记
    内容参考自:解读共识算法Raft(1)简介和状态简化出自Lamport的《InSearchofanUnderstandableConsensusAlgorithm》1.Raft把共识算法分为三个子问题:LeaderElection、L......
  • 在django如何给CBV添加装饰器?
    在Django中,给CBV添加装饰器有几种方式?在类视图中使用为函数视图准备的装饰器时,不能直接添加装饰器,需要使用method_decorator将其转换为适用于类视图方法的装饰器。method......
  • (笔记)关于Typora提示”This beta version of Typora is expired...“的解决办法
      一、问题使用老版本Typora时,会提示下文,并跳转至typora官网,从而没有使用。  二、解决办法修改Typora相应注册表的权限(作为旧版本失效后的一种补充):打开......
  • org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException
    1、问题概述将一个springboot项目打成Jar包后,在本地使用java-jar命令启动服务,服务能启动成功,但是会有如下报错信息。说明:配置文件为外置配置文件,与jar处于同......
  • UML画图笔记
    提纲:1:面向对象技术2:模型与可视化建模3:什么是UML4:UML发展历史5:软件过程6:UML工具7:UML构成8:UML实例9:UML在软件开发各个阶段的应用。 一:面向对象技术二:软件质......
  • 操作系统笔记
    第一章一:什么是操作系统覆盖在硬件和操作软件中间的一个系统,和硬件部分相互作用,主要起一个承上启下的任务二:资源的管理者现代计算机支持多任务,多......
  • 操作系统笔记总结
    操作系统一:什么是操作系统覆盖在硬件和操作软件中间的一个系统,和硬件部分相互作用,主要起一个承上启下的任务二:资源的管理者现代计算机支持多任务,多个应用程序共同使用......