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获取单表数据的三种方式的主要内容,如果未能解决你的问题,请参考以下文章