如何在Django中从数据库中获取多行数据?
我需要根据某些条件从数据库中获取多行数据。数据库中可能有一行匹配的记录,也可能有多行。我可以用get()方法来获取一行数据,但这个方法不能获取多行。
这是我的代码:
value=table.objects.get(col_name=1)
,这样我可以通过value.col
来访问它的数据,但正如我所说的,如果这个查询返回多于一行,就会出错。
我也试过filter(),value=table.objects.filter(col_name=1)
,但这样我就不能像之前那样通过value.col
来访问数据了。
所以请给我一些建议,告诉我怎么才能从数据库中获取多行数据,并逐行访问这些数据的列。
谢谢!!
3 个回答
0
value=table.objects.filter(col_name=1)
这段话的意思是,它会返回一种叫做“django.db.models.query.QuerySet”的类型,你可以用‘for’循环来逐个处理里面的内容。
3
values = table.objects.filter(col_name=1)
for value in values.all():
# Do something with value.col
当然可以!请把你想要翻译的内容发给我,我会帮你把它变得更容易理解。
1
是的,你必须从查询集中逐个处理项目:
for item in value:
item.col