code: def _childgroup_by_name(self, children, grid):
          
          children = self._dict_children(children)
          result = []
  
          for row in grid:
              child_row = []
              row_is_void = True
              width_sum = 0
              for name, width in row:
                  width_sum += width
                  if width_sum > self.num_cols:
                      warnings.warn(u"It seems your grid configuration overlaps \
  the bootstrap layout columns number. One of your lines is larger than {0}. \
  You can increase this column number by compiling bootstrap css with \
  lessc.".format(self.num_cols))
  
                  if isinstance(name, StaticWidget):
                      child = name
                      child.width = width
                      row_is_void = False
                  elif name is not None:
                      try:
                          child = children.pop(name)
                          row_is_void = False
                      except KeyError:
                          warnings.warn(u"No node {0} found".format(name))
                          child = VoidWidget(width)
                      child.width = width
  
                  else:
                      child = VoidWidget(width)
                  child_row.append(child)
  
              if not row_is_void:
                  result.append(child_row)
  
          # Add the field not configured in the grid
          for value in children.values():
              result.append([value])
          return result
docs: Group the children ordering them by name