docs: def ListField(field):
      """
      This wraps a field so that when get_from_instance is called, the field's
      values are iterated over
      """
      # alter the original field's get_from_instance so it iterates over the
      # values that the field's get_from_instance() method returns
      original_get_from_instance = field.get_from_instance
  
      def get_from_instance(self, instance):
          for value in original_get_from_instance(instance):
              yield value
  
      field.get_from_instance = MethodType(get_from_instance, field)
  
      return field