获取模型中完整的多对多数据

可获取到model中query多对多的完整数据

        query = queryset.order_by(ordering).first()
        for topic in query._meta.many_to_many:
            lista = list(topic.value_from_object(query).values_list('pk', flat=True))
            for lis in lista:
                data[lis] = TopicType.objects.filter(id=lis).first().name
            u_query[topic.name] = data

数据model转dict

from django.forms.models import model_to_dict
query =  queryset.order_by(ordering).first()
u_query = model_to_dict(query)
print(u_query)

输出后为query的所有数据的子层,模型中ForeignKey,OneToOneField, ManyToManyField关联的内容只展示其id

猜你喜欢

转载自blog.csdn.net/yufei707/article/details/85048984