zoukankan      html  css  js  c++  java
  • Python Web开发学习-Django(8)数据的添加、获取和筛选

    添加数据

    方法一:使用save()方法

    1.cmd进入到项目地址下,输入: python manage.py shell 

    2.引入创建的项目名称:from  faqs.models import faqsdata

    3.添加数据内容:d = faqsdata(question='test',answer='test')

    4.保存:d.save()

    5.查看是否添加成功:d.id,d.question,d.answer

    方法二:使用creat()方法

    1,2步骤与方法一 一致

    3.添加数据内容:d=faqsdata.objects.create(question='test3',answer='test3')

    4.查看是否添加成功(使用create方法不需要再另外保存):d.id,d.question,d.answer

    获取数据和筛选数据

    数据库现有数据

    获取所有数据行

    all()方法返回数据表中的所有数据,all()方法相当于SQL中的“select * from”命令

    例如获取数据库中的所有行数据,代码如下:

    ds = faqsdata.objects.all()
    for a in ds:
        print(a.id,a.question,a.answer)

    获取排序数据-升序

    order_by()方法返回升序,代码如下:

    ds = faqsdata.objects.order_by('answer')
    for a in ds:
        print(a.id,a.question,a.answer)

    获取排序数据-降序

    在要降序的参数前加上‘-’号。

    筛选数据

    filter()方法按指定条件筛选,代码如下:

    ds = faqsdata.objects.filter(question='test')
    for a in ds:
         print(a.id,a.question,a.answer)

    faqsdata.objects.filter(question='test') 相当于“select * from aqs_fasdata where question=‘test’ ”。

    exclude()方法和fiflter相反,它返回不满足条件的数据,代码如下:

    ds = faqsdata.objects.exclude(question='test')
    for a in ds:
         print(a.id,a.question,a.answer)

    faqsdata.objects.filter(question='test') 相当于“select * from aqs_fasdata where not question=‘test’ ”。

    获取单个数据行

    get()方法按条件搜索单个数据行,代码如下:

    ds = faqsdata.objects.get(id="3")
    print(a.id,a.question,a.answer)

    因为ds返回的是一个对象,所以不需要进行遍历,直接打印出来就可以了。

    如果获取时有多个匹配结果,则会触发MultipleObjectsReturned异常。

    如果没有匹配到结果,则会触发DoesNotExist异常。

    values()和values_list()方法

    values()查询的结果可以包含整个结果集,并以键值对的方式展示,代码如下:

    也可以与all(),order_by(),exclude()和filter()方法结合使用。

    values_list()返回的查询结果是以元组的形式展示的。

    关注个人公众号:测试开发进阶之路

      

  • 相关阅读:
    第十四周 Leetcode 315. Count of Smaller Numbers After Self(HARD) 主席树
    POJ1050 To the Max 最大子矩阵
    POJ1259 The Picnic 最大空凸包问题 DP
    POJ 3734 Blocks 矩阵递推
    POJ2686 Traveling by Stagecoach 状态压缩DP
    iOS上架ipa上传问题那些事
    深入浅出iOS事件机制
    iOS如何跳到系统设置里的各种设置界面
    坑爹的私有API
    业务层网络请求封装
  • 原文地址:https://www.cnblogs.com/zengxuejie/p/14024420.html
Copyright © 2011-2022 走看看