如何从django中的queryset获取字符串表示
我有这样的问题如何从django中的queryset获取字符串表示,django,django-models,Django,Django Models,我有这样的问题 qs=User.objects.all() 我正在像这样转换成dict qs.values('id','username') 但是我想得到的不是用户名,而是字符串表示形式 差不多 qs.values('id','uuuu str_uu')您不能,values只能获取存储在数据库中的值,字符串表示形式不存储在数据库中,它是用Python计算的 你能做的是: qs = User.objects.all() # Compute the values list "manually". d
qs=User.objects.all()
我正在像这样转换成dict
qs.values('id','username')
但是我想得到的不是用户名,而是字符串表示形式
差不多
qs.values('id','uuuu str_uu')
您不能,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)
编辑:仔细想想,根据您的字符串表示的计算方式,可以使用来获得相同的结果