Isn't this inconsistent with allowing limit_choices_to() to return a Q object?