Why the limitation to `is True` and not just `if queryset_only`?
And then, why the limitation to `queryset_only is None` (which even contradicts the comment two lines up)?
The line should just read `if queryset_only or name.startswith('_'):`, IMO