我们知道有查询集,值()方法时,有一个外键(作家,例如),就会导致这样的:
[{ 'author_id':3, ... }, ...]
我要像一个结果:
[{ 'author':{'name':'dave',...}, ... }, ...]
我试图select_related,但值()将不会显示外键的细节,我该怎么办?
我们知道有查询集,值()方法时,有一个外键(作家,例如),就会导致这样的:
[{ 'author_id':3, ... }, ...]
我要像一个结果:
[{ 'author':{'name':'dave',...}, ... }, ...]
我试图select_related,但值()将不会显示外键的细节,我该怎么办?
据我所知,Django不具有该内置支持。 select_related
永远不会改变一个查询集的结果,只有当你访问对象相关的查询数。
你可以使用DjangoFullSerializers得到的东西类似于你想要什么。
实现每个型号的统一方法,并打印出来。
class Book(..):
title = models.CharField(..)
color = models.CharField(...)
author = models.ForeignKey('Author')
...
def __unicode__(self):
return u"%s %s %s" %(title, color, author)
class Author(...):
name = models.CharField(...)
...
def __unicode__(self):
return name