I'm curious why you would take this approach, as opposed to, say, `model._meta.fields`. I can see the need to specify a list of field names if, for example, you wanted a user-friendly `ip` field that incorporates both `ip_upper` and `ip_lower` into its queries (which wouldn't be a bad idea). But doing it this way, feels like we are just needlessly restricting the api to particular fields.