如何在此查询集中获取course_code
的值?
<QuerySet [{'course_code': 11}]>
course_qs = <whatever query gave you the queryset>
for course in course_qs:
print(course['course_code'])
使用这个
someTable.objects.all()[0]['course_code']
或
someTable.objects.values_list('course_code', flat = True)
courses = <your query set>
print(courses[0]['course_code'])
什么对我有用:
course_qs = <whatever query gave you the queryset>
list_of_course = list(course_qs)
何时计算查询集
- 第一次迭代它们时
- 例如,当你对它们进行切片时,Post.objects.all(([:3]
- 当你腌制或缓存它们时
- 当你在它们上调用 repr(( 或 len(( 时
- 当你在它们上显式调用 list(( 时
- 在语句(如
bool()
、or
、and
或if
中测试它们时
现在比以前容易得多。 例如,您可以使用:
obj = Model.objects.all().first() # {'course_code': 11}
course_code = obj.course_code # 11
好的,这就是我所做的。
1:
items = ItemParent.objects.filter(item_type__contains="something")
# <QuerySet [<Item: iron>]>
阿拉伯数字:
items.values()
# <QuerySet [{'id': 5, 'item_parent_id': 8, 'item_type': 'iron', 'item_article_no': '12336'}]>
3:
items.values()["id"]
# 5
当 QuerySet 是多个集时:
# <QuerySet [{'id': 5, 'item_parent_id': 8, 'item_type': 'iron', 'item_article_no': '12336'},
# {'id': 6, 'item_parent_id': 9, 'item_type': 'rust', 'item_article_no': '12338'}]>
item_id_one = items.values()[0]["id"]
item_id_two = items.values()[1]["id"]
# etc..
或者就我而言:
for f in items.values()
item_id = f["id"]
您可以尝试以下操作,这将从 查询集。
courses = <your query set>
linked_content = []
for content in courses:
linked_content.append(content)
return linked_content
这将返回一个查询集: Django 4.0
result = User.objects.filter(Q(ip__icontains='count')) #<QuerySet [<User: count>]>
这将返回计数的值:
result.values('count').get()['count']
然而,这是疯狂的编译?!必须而且应该有一个更简单的解决方案...
型:
class User(django.Model):
count = models.PositiveIntegerField(default=1)
你可以使用这个:
>>> course_code = str(table_name.objects.all()[0])
>>> course_code
'11'