首页 > 解决方案 > 在 python django 中,是否可以从数据库表中提取数据并将其存储在数组中?

问题描述

我尝试使用 'tablename.objects.Fname()' 提取数据,但我仍然对如何将数据库中的所有名字存储在数组中感到困惑。

如果是的话,任何人都可以提供一个例子,任何形式的帮助都将不胜感激。

标签: pythonarraysdjangodjango-modelsweb-development-server

解决方案


.values(…)您可以使用或获取存储在列中的值.values_list(…)。例如:

tablename.objects.values_list('Fname', flat=True)

QuerySet是一个迭代,每条记录都将包含一个元素,该元素具有该记录的清理值。所以如果它是一个ArrayField,它将包含一个列表的集合。

但是使用ArrayField[Django-doc]或其他复合字段通常不是一个好主意。它使数组中的项目更难处理、过滤、JOIN 等。因此,通常最好制作一个额外的表,并定义多对一关系,例如使用ForeignKey[Django-doc]


推荐阅读