code: def preload_record_data(self, obj):
          
          data = {}
  
          for orm_path, column_name in self.value_queries.items():
              value = obj[orm_path]
              if column_name not in data:
                  data[column_name] = value
              else:
                  if not isinstance(data[column_name], (tuple, list)):
                      data[column_name] = [data[column_name]]
                  data[column_name].append(value)
          obj.update(data)
          return super(ValuesDatatable, self).preload_record_data(obj)
docs: Modifies the ``obj`` values dict to alias the selected values to the column name that asked
          for its selection.
  
          For example, a datatable that declares a column ``'blog'`` which has a related lookup source
          ``'blog__name'`` will ensure that the selected value exists in ``obj`` at both keys
          ``blog__name`` and ``blog`` (the former because that was how it was selected, the latter
          because that was the column name used to select it).
  
          :Example:
  
              ``{'pk': 1, 'blog__name': "My Blog"}``
              ``{'pk': 1: 'blog__name': "My Blog", 'blog': "My Blog"}``
  
          When a column declares multiple :py:attr:`~datatableview.columns.Column.sources`, the column
          name's entry in ``obj`` will be a list of each of those values.
  
          :Example:
  
              ``{'pk': 1, 'blog__name': "My Blog", 'blog__id': 5}``
              ``{'pk': 1: 'blog__name': "My Blog", 'blog__id': 5, 'blog': ["My Blog", 5]}``
  
          In every situation, the original selected values will always be retained in ``obj``.