              # getattr(model, item) could be an X_RelatedObjectsDescriptor
              try:
                  field = model._meta.get_field(item)
              except FieldDoesNotExist:
                  try:
                      field = getattr(model, item)
                  except AttributeError:
                      field = None
  
              if field is None:
                  return [
                      checks.Error(
                          "The value of '%s' refers to '%s', which is not a "
                          "callable, an attribute of '%s', or an attribute or method on '%s.%s'." % (
                              label, item, obj.__class__.__name__, model._meta.app_label, model._meta.object_name
                          ),
                          obj=obj.__class__,
                          id='admin.E108',
                      )
                  ]
              elif isinstance(field, models.ManyToManyField):
                  return [
                      checks.Error(
                          "The value of '%s' must not be a ManyToManyField." % label,
                          obj=obj.__class__,
                          id='admin.E109',
                      )
                  ]
              else:
                  return []
          else:
              try:
                  model._meta.get_field(item)
              except FieldDoesNotExist:
 
</s> remove             # getattr(model, item) could be an X_RelatedObjectsDescriptor
 </s> add  </s> remove         else:
            try:
                model._meta.get_field(item)
            except FieldDoesNotExist:
                return [
                    # This is a deliberate repeat of E108; there's more than one path
                    # required to test this condition.
                    checks.Error(
                        "The value of '%s' refers to '%s', which is not a callable, "
                        "an attribute of '%s', or an attribute or method on '%s.%s'." % (
                            label, item, obj.__class__.__name__, model._meta.app_label, model._meta.object_name
                        ),
                        obj=obj.__class__,
                        id='admin.E108',
                    )
                ]
 </s> add 
              # getattr(model, item) could be an X_RelatedObjectsDescriptor
              try:
                  field = model._meta.get_field(item)
              except FieldDoesNotExist:

























                  return []
          else:
              try:
                  model._meta.get_field(item)
              except FieldDoesNotExist:
keep keep keep keep replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace keep keep keep keep keep
 Fixed #28490 -- Removed unused code in admin.E108 check. 
django/contrib/admin/checks.py