How can i get the string representation from queryset in django How can i get the string representation from queryset in django django django

How can i get the string representation from queryset in django


You cannot, values can only fetch values stored in the database, the string representation is not stored in the database, it is computed in Python.

What you could do is:

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)

Edit: on second thought, depending on how your string representation is computed, it may be possible to use annotate with query expressions to achieve the same result.