在django中从数据库中获取多行?

时间:2013-01-29 09:16:49

标签: python database django django-views

我必须根据某些条件从数据库中获取多行。数据库中可能有一行用于匹配查询或多行。我可以将get()用于一行,但它不会获取多行。

这是我的代码:

value=table.objects.get(col_name=1)然后我可以将其数据作为value.col访问,但正如我所说,如果此查询返回多行,则会给出错误。

我还尝试了过滤器(),value=table.objects.filter(col_name=1),但我无法以value.col的形式访问其数据。

所以请建议我如何从数据库中获取多行并逐个访问这些行。

谢谢!

3 个答案:

答案 0 :(得分:1)

是的,您必须迭代查询集中的项目:

for item in value:
    item.col

答案 1 :(得分:1)

values = table.objects.filter(col_name=1)
for value in values.all():
    # Do something with value.col

答案 2 :(得分:0)

value=table.objects.filter(col_name=1)

将返回可以使用“ for”循环进行迭代的“ django.db.models.query.QuerySet”类型