Django之ORM单表CURD

Django之ORM单表CURD

需提前准备下测试脚本,可参考Django测试脚本准备
下面操作的所有代码都是要编写在测试脚本下的(setup()后面)

单表操作

""" 新增 """
# 方式一:create()
models.User.objects.create(name="fer3", age=18, register_time=datetime.datetime.now())

# 方式二:对象.save()
import datetime
from User.models import User

user_obj = User(name="fer", age=18, register_time=datetime.datetime.now())
user_obj.save()

""" 修改 """
# 方式一:update()
models.User.objects.filter(pk=1).update(name="fer3", age=18)
# 方式二:对象.save()
update_obj = models.User.objects.filter(pk=1).first()
update_obj.name = "fer1"
update_obj.save()  # 最后一定要save一下

""" 删除 """
# 方式一:update()
models.User.objects.filter(pk=1).delete()
# 方式二:对象.delete()
delete_obj = models.User.objects.filter(pk=1).first()
delete_obj.delete()

""" 查询 """
# 带有过滤条件,类似where
models.User.objects.filter(name="fer")
# 查询所有数据
models.User.objects.all()
# 直接拿数据对象,但是条件不存在直接报错
models.User.objects.get("name")

""" 补充:django ORM常用小方法 """
first()  # 获取queryset里面第一个元素
last()   # 获取queryset里面最后一个元素
values()  # 需要查询是数据,类似原生sql中  select * from user; *位置的参数,返回的结果是一个queryset对象(列表套字典的形式)
values_list()  # 需要查询是数据,类似原生sql中  select * from user; *位置的参数,返回的结果是一个queryset对象(列表套元组的形式)
count()   # 统计查询数量
order_by()  # 排序,默认是升序,在参数前面加-号变成降序,eg: order_by("-id")
exclude()  # 排除...在外
distinct()  # 去重

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值