使用fi后如何组织数据

2024-10-04 07:25:06 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有这样一个数据库表:

NumCOL    NameCol    AgeCOL    ColourCOL
----------------------------------------
1         Joel       18         Blue
2         Joey       22         Red
3         Jacob      25         Green
4         Jack       27         Blue
5         Joey       21         Red

在这个例子中,NumCOL是唯一的,1,NameCOL, AgeCOL & ColourCOL的icrements不是唯一的。我需要对它们进行过滤,这样我就可以根据ColourCOL抓取所有条目,然后抓取NameCOL & AgeCOL中分配给颜色的条目。我使用下面的代码(用户选择蓝色):

colour = request.POST.get('FormColour') #colour = blue 
name = Database.objects.filter(ColourCOL=colour).values_list('NameCOL', flat=True)

现在有两个名字是蓝色的,所以我想用一个列表,把所有的数据附加到一个列表中,在需要的时候从列表中调用,就像这样:

ex_list = []
tracker = 0
for x in name:
    age = Database.objects.filter(ColourCOL=colour, NameCOL=name).values_list('AgeCOL', flat=True)
    ex_list.append([name[tracker], name, age])
    tracker += 1

我担心的是,如果我需要写入PDF或在表中显示数据,我将无法有效地从列表中检索数据(如果有的话)。另一种解决方案是按NumCOL排序,但用户只能访问ColourCOL中的数据。那么,对所有信息进行排序的最佳方法是什么呢?在这里,我可以显示所选的颜色,然后显示每个人的姓名和年龄

谢谢你的帮助


Tags: 数据name列表颜色条目blueredtracker
1条回答
网友
1楼 · 发布于 2024-10-04 07:25:06
colour = request.POST.get('FormColour') #colour = blue 
data_dict = Database.objects.filter(ColourCOL=colour).values('NameCOL', 'AgeCOL', 'NumCOL')
for data in data_dict:
    print(data['NameCOL'], data['AgeCOL'], data['NumCOL'])

您可以使用值从检索到的数据中创建dict,对其进行迭代并从dict访问列名

相关问题 更多 >