如何使用多个ORM查找参数获取单个模型对象 [英] How to get a single model object using multiple ORM lookup parameters

查看:94
本文介绍了如何使用多个ORM查找参数获取单个模型对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

  employees = Employee.objects.filter(age = 23,sex ='female')

这将返回一个查询器。



如果我假设这个查询器只包含一个结果,那么如何直接返回该对象? >

有没有办法像使用'get'?

解决方案

其实你可以在QuerySet的 get()方法中传递多个查询参数。那么怎么样?

  try:
employee = Employee.objects.get(age = 23,sex ='female ')
除了Employee.DoesNotExist:
#没有员工发现
除了Employee.MultipleObjectsReturned:
#如果有多名员工已经返回,该怎么办?


employees = Employee.objects.filter(age=23, sex='female')

This would return a queryset.

If I assume this queryset only contains one result, how to return that object directly?

Is there any way like using 'get'?

解决方案

Actually, you can pass multiple lookup parameters in QuerySet's get() method. So how about?

try:
    employee = Employee.objects.get(age=23, sex='female')
except Employee.DoesNotExist:
    # no employee found
except Employee.MultipleObjectsReturned:
    # what to do if multiple employees have been returned?

这篇关于如何使用多个ORM查找参数获取单个模型对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆