Blueherb In solitude, where we are least alone

Django之表操作

1.单表查询必知必会13条

​ 1.all,返回全部
​ 2.filter,返回符合条件的对象
​ 3.get,返回对象本身
​ 4.first,返回第一个
​ 5.last,返回最后一个
​ 6.exclude,返回不符合条件的对象
​ 7.values,列表套字典
​ 8.values_list,列表套元组
​ 9.count,计数
​ 10.distinct,去重
​ 11.order_by,排序
​ 12.reverse,排序后反转
​ 13.exists,返回布尔值

2.神奇的双下划线查询

​ __gt:大于
​ __lt:小于
​ __gte:大于等于
​ __lte:小于等于
​ __in=[a,b,c]:a或者b或者c
​ __range=(a,b):在a,b中间(顾头不顾尾)
​ __contains='':包含(区分大小写)
​ __icontains='':包含(忽略大小写)
​ __startswith='':以什么开头
​ __endswith='':以什么结尾
​ __year/month/day='':时间是多少年/月/日的

3.多对多字段的四个方法

​ add() 添加信息
​ set() 修改关系
​ remove() 删
​ clear() 清空

django测试环境搭建

​ import os
​ if name == "main":
​ os.environ.setdefault("DJANGO_SETTINGS_MODULE", "one_search.settings")
​ import django
​ django.setup()

​ #你就可以在下面测试django任何的py文件

如果你向查看orm语句内部真正的sql语句有两种方式(建议第二种)

​ 1.如果是queryset对象 可以直接点query查看
​ 2.配置文件中 直接配置
​ LOGGING = {
​ 'version': 1,
​ 'disable_existing_loggers': False,
​ 'handlers': {
​ 'console': {
​ 'level': 'DEBUG',
​ 'class': 'logging.StreamHandler',
​ },
​ },
​ 'loggers': {
​ 'django.db.backends': {
​ 'handlers': ['console'],
​ 'propagate': True,
​ 'level': 'DEBUG',
​ },
​ }}

增:1.models.表名.objects.create(id="")

2.表名_obj = models.表名(id='')

    表名_obj.save()

改:1.models.表名.objects.filter(id="").update(name='')

2.表名_obj = models.表名.objects.filter(id='').first()

   表名_obj.name=''

   表名_obj.save()

删:models.表名.objects.filter(id="").delete(name='')

查:1.res = models.表名.objects.all()

for i in res:

	print(i.title)

2.res = models.表名.objects.filter()

	print(res)
posted @ 2019-10-24 21:46  奏乐乐章  阅读(95)  评论(0编辑  收藏  举报