django QuerySet API
2018-02-14 11:30
489 查看
新建一个对象
Person.objects.create(name=name,age=age) p = Person(name="WZ", age=23) p.save() p = Person(name="TWZ") p.age = 23 p.save() Person.objects.get_or_create(name="WZT", age=23)
获取对象
- 获取全部对象
Person.objects.all() Person.objects.all()[:10] 切片操作,获取10个人,不支持负索引,切片可以节约内存
-获取单个对象
Person.objects.get(name=name)
-获取满足条件的对象
Person.objects.filter(name="abc") # 等于Person.objects.filter(name__exact="abc") #名称严格等于 "abc" 的人 Person.objects.filter(name__iexact="abc") # 名称为 abc 但是不区分大小写,可以找到 ABC, Abc, aBC,这些都符合条件 Person.objects.filter(name__contains="abc") # 名称中包含 "abc"的人 Person.objects.filter(name__icontains="abc") #名称中包含 "abc",且abc不区分大小写 Person.objects.filter(name__regex="^abc") # 正则表达式查询 Person.objects.filter(name__iregex="^abc") # 正则表达式不区分大小写 Person.objects.exclude(name__contains="WZ") # 排除包含 WZ 的Person对象 Person.objects.filter(name__contains="abc").exclude(age=23) # 找出名称含有abc, 但是排除年龄是23岁的
values_list 获取元组形式结果
In [6]: authors = Author.objects.values_list('name', 'qq') In [7]: authors Out[7]: <QuerySet [(u'WeizhongTu', u'336643078'), (u'twz915', u'915792575'), (u'wangdachui', u'353506297'), (u'xiaoming', u'004466315')]>
values 获取字典形式的结果
In [13]: Author.objects.values('name', 'qq') Out[13]: <QuerySet [{'qq': u'336643078', 'name': u'WeizhongTu'}, {'qq': u'915792575', 'name': u'twz915'}, {'qq': u'353506297', 'name': u'wangdachui'}, {'qq': u'004466315', 'name': u'xiaoming'}]> In [14]: list(Author.objects.values('name', 'qq')) Out[14]: [{'name': u'WeizhongTu', 'qq': u'336643078'}, {'name': u'twz915', 'qq': u'915792575'}, {'name': u'wangdachui', 'qq': u'353506297'}, {'name': u'xiaoming', 'qq': u'004466315'}]
修改一个 settings.py 让Django打印出在数据库中执行的语句
LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'console': { 'class': 'logging.StreamHandler', }, }, 'loggers': { 'django.db.backends': { 'handlers': ['console'], 'level': 'DEBUG' if **True** else 'INFO', }, }, }
相关文章推荐
- Django学习系列之ORM-QuerySetAPI
- Django QuerySet API文档
- Django QuerySet API文档
- Django | QuerySet API reference | Django documentation
- Django QuerySet API
- [py]django强悍的数据库接口(QuerySet API)-增删改查
- Django QuerySet API
- 基于 Django1.10 文档的深入学习(23)—— QuerySet API reference 之 icontains
- Django QuerySet API
- Django - 模型(QuerySet API)
- Django QuerySet API
- Django | QuerySet API reference | Django documentation
- Django QuerySet API
- Django07-数据库接口QuerySet API
- Django | 查询API参考 (QuerySet API reference) | Django文档
- Django | QuerySet API reference | Django documentation
- django QuerySet里那些常用又不常见的技巧
- django restframework(serializer & queryset & model)
- Django QuerySet 多表联查/条件选取/合并
- Django QuerySet的select_related()函数