diff --git a/rest_flex_fields/filter_backends.py b/rest_flex_fields/filter_backends.py index 63e3402..b0da9fc 100644 --- a/rest_flex_fields/filter_backends.py +++ b/rest_flex_fields/filter_backends.py @@ -227,13 +227,19 @@ def filter_queryset( queryset = queryset.prefetch_related(*( model_field.name for model_field in nested_model_fields if - (model_field.is_relation and not model_field.many_to_one) or - (model_field.is_relation and model_field.many_to_one and not model_field.concrete) # Include GenericForeignKey) + ( + (model_field.is_relation and not model_field.many_to_one) or + (model_field.is_relation and model_field.many_to_one and not model_field.concrete) # Include GenericForeignKey) + ) and + (model_field.name not in self._get_prefetches_ignores()) ) ) return queryset + def _get_prefetches_ignores(self): + return [] + @staticmethod @lru_cache() def _get_field(field_name: str, model: models.Model) -> Optional[models.Field]: