From f15196a11d4c1461140f37f29aabd64d0fc8852d Mon Sep 17 00:00:00 2001 From: Berg Lucas <55436804+BergLucas@users.noreply.github.com> Date: Sat, 19 Jul 2025 15:12:37 +0200 Subject: [PATCH] Remove useless if --- rest_framework/serializers.py | 37 +++++++++++++++++------------------ 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py index 7fce43902..86fa5f9cf 100644 --- a/rest_framework/serializers.py +++ b/rest_framework/serializers.py @@ -1106,27 +1106,26 @@ class ModelSerializer(Serializer): source_info = info source_model = model - if len(source_attrs) > 1: - attr_info = info - attr_model = model + attr_info = info + attr_model = model - for attr in source_attrs[:-1]: - if attr not in attr_info.relations: - break + for attr in source_attrs[:-1]: + if attr not in attr_info.relations: + break - attr_model = attr_info.relations[attr].related_model - attr_info = model_meta.get_field_info(attr_model) - else: - attr = source_attrs[-1] - if ( - attr in attr_info.fields_and_pk - or attr in attr_info.relations - or hasattr(attr_model, attr) - or attr == self.url_field_name - ): - source = attr - source_info = attr_info - source_model = attr_model + attr_model = attr_info.relations[attr].related_model + attr_info = model_meta.get_field_info(attr_model) + else: + attr = source_attrs[-1] + if ( + attr in attr_info.fields_and_pk + or attr in attr_info.relations + or hasattr(attr_model, attr) + or attr == self.url_field_name + ): + source = attr + source_info = attr_info + source_model = attr_model # Determine the serializer field class and keyword arguments. field_class, field_kwargs = self.build_field(