code: def _str_dotted_getattr(obj, name):
      
      for part in name.split('.'):
          obj = getattr(obj, part)
      return str(obj) if obj else None
docs: Expands extends getattr to allow dots in x to indicate nested objects.
  
      Args:
         obj (object): an object.
         name (str): a name for a field in the object.
  
      Returns:
         Any: the value of named attribute.
  
      Raises:
         AttributeError: if the named attribute does not exist.