Thanks for the suggestion Daniel, but that doesn't help either :\
This will raise a field error (bff_id is not a valid field, only bff
is)
Person.objects.exclude(bff_id=None)
And these both result in JOINs:
Person.objects.exclude(bff=None)
Person.objects.exclude(bff__id=None)
Perhaps there is an optimization to be made at the Django ORM level?
jb