gpt4 book ai didi

django - 我如何从 django 中的查询集中获取字符串表示形式

转载 作者:行者123 更新时间:2023-12-02 13:27:01 25 4
gpt4 key购买 nike

我有这样的查询集

qs = User.objects.all()

我正在转换为这样的字典

qs.values('id', '用户名')

但我想获取字符串表示形式,而不是用户名。

类似的东西

qs.values('id', '__str__')

最佳答案

你不能,values只能获取存储在数据库中的值,字符串表示形式不存储在数据库中,它是在Python中计算的。

你可以做的是:

qs = User.objects.all()
# Compute the values list "manually".
data = [{'id': user.id, '__str__': str(user)} for user in qs]

# You may use a generator to not store the whole data in memory,
# it may make sense or not depending on the use you make
# of the data afterward.
data = ({'id': user.id, '__str__': str(user)} for user in qs)

编辑:再想一想,根据字符串表示的计算方式,可以使用 annotatequery expressions达到相同的结果。

关于django - 我如何从 django 中的查询集中获取字符串表示形式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30012470/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com