It looks like the filter is necessary. Consider that `field` is `flatpages.FlatPage.sites`. In that case, `field._meta.get_all_related_objects()` returns a list containing `r = <RelatedObject: flatpages:flatpage related to sites>` and `r.field is field` is true. So we still need the filter, otherwise we generate "Clash between accessors for FlatPage.sites and FlatPage.sites" errors.