Как преобразовать экспорт Django QuerySet в один dictonary?

Как преобразовать экспорт Django QuerySet в один диктонарий?

Я хочу вставить Django QuerySet в качестве источника данных в DataTable для Bokeh

queryset = Model.objects.all()
qs = queryset.values()
qs = dict(qs)

header = [field.verbose_name for field in Model._meta.get_fields()]
columns = [TableColumn(field=col, title=col) for col in header]
source = ColumnDataSource(qs)
data_table = DataTable(source=source, columns=columns)

script, div = components(data_table)

 qs = dict(qs)
             ^^^^^^^^
    ValueError: dictionary update sequence element #0 has length 11; 2 is required

qs не является словарем, это последовательность значений объекта (Queryset Values). Следовательно, вы можете привести его как словарь, но вы можете привести его как список (который будет списком словарей):

qs = list(qs)

Недостаточно загрузить в базу данных. Вам нужно построить словарь из этого списка:

qs_dict = {}

for item in qs:
    for field in Model._meta.get_fields():
        qs_dict[field.verbose_name] = qs_dict.get(field.verbose_name, []).append(item[field.name])

source = ColumnDataSource(qs_dict)
Вернуться на верх