django orm的增删改查

1.首先先创建表

1
2
3
class User(models.Model):
    name = models.CharField(max_length=50)
    age = models.IntegerField()

  具体的类型:

AutoField:自动增长的IntegerField, 不指定时Django会自动创建属性名为id的自动增长属性

BooleanField:布尔字段,值为True或False

NullBooleanField:支持Null、True、False三种值

CharField(max_length=20):字符串

参数max_length表示最大字符个数
TextFiled:大文本字段,一般超过4000个字符时使用

IntegerField:整数

DecimalField(max_digits=None, decimal_places=None):可以指定精度的十进制浮点数

参数max_digits表示总位数
参数decimal_places表示小数位数
FloatField():浮点数 

DateField[auto_now=False, auto_now_add=False]):日期

参数auto_now表示每次保存对象时,自动设置该字段为当前时间,用于"最后一次修改"的时间戳,它总是使用当前日期,默认为false
参数auto_now_add表示当对象第一次被创建时自动设置当前时间,用于创建的时间戳,它总是使用当前日期,默认为false
参数auto_now_add和auto_now是相互排斥的,组合将会发生错误
TimeField:参数和DateField一样

DateTimeField:日期时间,参数同DateField

 FileField:上传文件字段,以二进制的形式

 ImageField:继承于FileField,对上传的内容进行校验,确保是有效的图片
更多请参考文档

2.增删改查操作

  增:User.objects.create(name='hehe')

  还有其他集中方式这里不多写,之前有看过一个文章,同时也打印出了 执行的sql语句,这个无疑是效率最高的一种写法

  删:1.del = User.objects.get(name="hehe") 定位到要删除的数据

    2.del.delete() 执行删除操作

  改:User.objects.filter(name="hehe").update("hehe01")

  查:User.objects.all() 查询出所有

    User.objects.filter(name="hehe") filter相当于where 

posted @   飞羽小鱼仔  阅读(99)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示