我有一个表bucket_items,其列为bucket_id,item_id我想按bucket_id对item_ids进行分组,使用
ItemBucket.objects.values('bucket_id', 'item_id')
这会返回包含bucket_id和item_id的字典列表,我想要的是一个字典列表,其中包含桶ID作为键,item_ids列表为值
[{1: [1,2,3]}, {3: [7,3,2]}]
答案 0 :(得分:2)
使用values_list
会更好,而不是values
,而tuples
会返回dicts
而不是final_dict = dict()
for (bucket_id, item_id) in ItemBucket.objects.values_list('bucket_id', 'item_id'):
final_dict.setdefault(bucket_id, []).append(item_id)
final_list = [{bucket_id: final_dict[bucket_id]} for bucket_id in final_dict]
。所以你可以做类似
HubSection