zoukankan      html  css  js  c++  java
  • Django基本知识

    一、ORM

    1-1 查询API:

    复制代码
    filter(**kwargs)  # 它包含了与所给筛选条件相匹配的对象
    all()             # 查询所有结果
    get(**kwargs)      # 返回与所给筛选条件相匹配的对象,返回的结果有且只有一个,超过则报错
    values(*field)     # 返回一个valueQuerySet,一个特殊QuerySet(对象集合),返回结果是
                         一个可迭代的字典序列
    exclude(**kwargs)  # 它包含了与所给筛选条件不匹配的对象
    order_by(*field)   # 对查询结果进行排序
    reverse()         # 对查询结果进行反向排序
    distinct()         # 从返回结果中剔除重复记录
    count()            # 返回数据库中匹配查询(QuerySet)的对象数量
    first()            # 返回第一条记录
    last()             # 返回最后一条记录
    exists()           # 如果QuerySet包含数据,就返回True,否则返回False
    复制代码

     1-2 双下划线查询

    复制代码
    model.Tb1.objects.filter(id__lt=10, id__gt=1) # 获取id大于1 且 小于10的值
    model.Tb1.objects.filter(id__in[11, 22, 33])  # 获取id等于11、22、33的数据
    model.Tb1.objects.exclude(id__lt=10, id__gt=1)# 获取id不等于11、22、33的数据
    model.Tb1.objects.filter(name_contains='ven') # 获取name值包含ven(区分大小写)
    model.Tb1.objects.filter(name_icontains='ven') # 获取name值包含ven(不区分大小写)
    model.Tb1.objects.filter(id__range=[1, 3]) # 获取id在区间1~3中的值(范围bettwen and)
    复制代码

    1-3 多表操作(多对多):

      创建多对多的关系  author = models.ManyToManyFiled("Author") 

      书籍对象它的所有关联作者  obj = book_obj.authors.all()

          绑定多对多关系     obj.add(*QuerySet)  参数:一条或者多条(前面加*)

          解除多对多关系     obj.remove(author_obj)

  • 相关阅读:
    《.NET分布式应用程序开》读书笔记 第一章:理解分布式架构
    一个DataSet的工具类,可以将DataTime的Time部分去掉,主要在序列化Xml时有用.
    Microsoft SQL Server 2005技术内幕系列书籍
    COM+客户端部署发现
    PowerDesigner中三种模型的转换关系图
    将ASP.NET页面内容输出到字符串中
    在WinForms中隐藏Crystal Report的[MainReport]标签页
    qmake常用语法一
    MinGW简介
    Qt的prx文件
  • 原文地址:https://www.cnblogs.com/Dio-bread/p/11675359.html
Copyright © 2011-2022 走看看