Django limit_choices_to用于具有“或”条件的多个字段

时间:2015-05-12 03:08:19

标签: django limit-choices-to

我试图通过检查两列“share_holder”和“distributor”的值来限制字段的选择。如果它们中的任何一个是真的,那么我想要那个选择。

对于以下版本,我只有满足两个条件的选择('share_holder':True AND'distributor':True)。

limit_choices_to={'share_holder': True, 'distributor': True}

但是,我需要选择('share_holder':True OR''distributor':True)。

1 个答案:

答案 0 :(得分:16)

您可以使用Q对象来实现此目的。

from django.db.models import Q


limit_choices_to=Q(share_holder=True) | Q(distributor=True)

ForeignKey.limit_choices_to

上的官方文档