繁体   English   中英

Django queryset返回单个值

[英]django queryset return single value

我有以下内容-

obj.owner_id = Owner.objects.filter(owner_name=owner_obj).values_list('owner_id')[0]

问题在于它返回的值是一个元组。 具体来说-

(786,)

我只想返回整数值786

我究竟做错了什么?

对于后代来说,这也是可行的,并且(在我看来)是所有方法中最干净的选择:

Owner.objects.values_list('owner_id', flat=True).get(owner_name=owner_obj)

假设owner_name是唯一的,则可以使用以下任一方法:

  • owner_id = Owner.objects.only('owner_id').get(owner_name=owner_name).owner_id
  • owner_id = Owner.objects.values('owner_id').get(owner_name=owner_name)['owner_id']
  • owner_id = Owner.objects.values_list('owner_id', flat=True).get(owner_name=owner_name)

说明文件:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM