问题
I am trying to limit choices for a field, by checking values of the two columns, 'share_holder' and 'distributor'. If any of them is true, then I want that choice.
With below version, I only got choices satisfying both conditions ('share_holder': True AND 'distributor': True).
limit_choices_to={'share_holder': True, 'distributor': True}
However, I need choices for ('share_holder': True OR 'distributor': True).
回答1:
You can use Q objects to achieve this.
from django.db.models import Q
limit_choices_to=Q(share_holder=True) | Q(distributor=True)
Official docs on ForeignKey.limit_choices_to
来源:https://stackoverflow.com/questions/30181079/django-limit-choices-to-for-multiple-fields-with-or-condition