Django-model操作

操作model前需要先在文件中引入该model

from .models import TestModel

1、存储

# 方法一
test_model = TestModel()
test_model.name = 'name'
test_model.message = 'message'
test_model.save()
# 方法二
test_model = TestModel(name='name')
test_model.save()

2、读取

# 获取所有数据
list = TestModel.objects.all()
# 获取一条数据
list = TestModel.objects.get(id=1)
# 设置过滤条件
list = TestModel.objects.filter(id=1) 
# 限制获取的数据(相当于sql中OFFSET 0 LIMIT 2)
TestModel.objects.order_by('name')[0:2]
# 排序
TestModel.objects.order_by("id")

# 连锁使用上面的方法
TestModel.objects.filter(name="name").order_by("id")
获取到之后遍历得到的数据 然后获取需要的字段值
image.png

3、更新数据

# 更新一条数据
test_model = TestModel.objects.get(id=1) # 先获取原始数据
test_model.name = 'name' # 修改其中的某个字段
test_model.save() # 存储

# 更新所有匹配的数据
TestModel.objects.filter(id=1).update(name='name') 

# 更新所有数据
TestModel.objects.all().update(name='name') 

删除数据

# 删除某一条数据
test_model = TestModel.objects.get(id=1)
test_model.delete()

# 删除匹配到的所有数据
TestModel.objects.filter(id=1).delete()

# 删除所有数据
TestModel.objects.all().delete() 

model操作的其他用法

__exact 精确等于 like ‘aaa’
__iexact 精确等于 忽略大小写 ilike ‘aaa’
__contains 包含 like ‘%aaa%’
__icontains 包含 忽略大小写 ilike ‘%aaa%’,但是对于sqlite来说,contains的作用效果等同于icontains。
__gt 大于
__gte 大于等于
__lt 小于
__lte 小于等于
__in 存在于一个list范围内
__startswith 以…开头
__istartswith 以…开头 忽略大小写
__endswith 以…结尾
__iendswith 以…结尾,忽略大小写
__range 在…范围内
__year 日期字段的年份
__month 日期字段的月份
__day 日期字段的日
__isnull=True/False
__isnull=True 与 __exact=None的区别

用法

TestModel.objects.filter(pub_date__lte=’2006-01-01′)
# ELECT * FROM blog_entry WHERE pub_date <= ’2006-01-01′;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 32,403评论 2 89
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 180,166评论 25 708
  • 人生中要走很多路,有一条路不能回头,就是放弃的路;有一条路不能拒绝,就是成长的路;有一条路不能迷失,就是信念的路;...
    董董在这里阅读 191评论 0 1
  • 今天是中考的第一天 其实蛮害怕的 害怕 考试考不好 不能上理想的高中 害怕和班级里的有些同学分别 关于语文 考试...
    爱吃的北极熊阅读 238评论 0 0

友情链接更多精彩内容