code: def full_name(self):
      
  
      entity = self.entity.__name__ if self.entity is not None else None
      name = self.name if self.name is not None else None
      if entity and name:
        return entity + '.' + name
      elif entity:
        return entity + '.<unnamed>'
      elif name:
        return '<unbound>.' + name
      else:
        return '<unbound>.<unnamed>'
docs: The full name of the field. This is the field's entities name
      concatenated with the field's name. If the field is unnamed or
      not bound to an entity, the result respectively contains None.