django获取单表数据的三种方式

Posted xone

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django获取单表数据的三种方式相关的知识,希望对你有一定的参考价值。

django获取单表数据的三种方式

v1 = models.Business.objects.all()
# QuerySet ,内部元素都是对象


v2 = models.Business.objects.all().values(‘id‘,‘caption‘)
# QuerySet ,内部元素都是字典


v3 = models.Business.objects.all().values_list(‘id‘,‘caption‘)
# QuerySet ,内部元素都是元组

def business(request):

    v1 = models.Business.objects.all()

    v2 = models.Business.objects.all().values(id,caption)

    v3 = models.Business.objects.all().values_list(id,caption)

    print(v1,v2,v3)
    return render(request, business.html, {v1: v1, v2: v2, v3: v3})

 

business.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <h1>业务线列表(对象)</h1>
    <ul>
        {% for row in v1 %}
            <li>{{ row.id }} - {{ row.caption }} - {{ row.code }}</li>
        {% endfor %}
    </ul>
    <h1>业务线列表(字典)</h1>
    <ul>
        {% for row in v2 %}
            <li>{{ row.id }} - {{ row.caption }}</li>
        {% endfor %}
    </ul>
    <h1>业务线列表(元组)</h1>
    <ul>
        {% for row in v3 %}
            <li>{{ row.0 }} - {{ row.1 }}</li>
        {% endfor %}
    </ul>
</body>
</html>

 

获取一个对象

方法一:如果存在就返回一个对象,如果不存在就报错,不推荐
models.Business.objects.get(id=1)
方法二:如果存在就返回一个对象,不存在就返回none,推荐
models.Business.objects.filter(id=1).first()

 

以上是关于django获取单表数据的三种方式的主要内容,如果未能解决你的问题,请参考以下文章

Django的ORM获取单表数据的三种方法

Django - 获取表单数据的三种方式

Python Django 获取表单数据的三种方式

django-缓存的三种应用

django--完成客户端下载文件的三种方式

hibernate笔记--继承映射关系的三种实现方式