Django 如何组合select_related()和value()?
我们知道有一个Django 如何组合select_related()和value()?,django,Django,我们知道有一个values()方法用于QuerySet,当存在外键(例如作者)时,结果如下: [{ 'author_id':3, ... }, ...] [{ 'author':{'name':'dave',...}, ... }, ...] 我想要的结果是: [{ 'author_id':3, ... }, ...] [{ 'author':{'name':'dave',...}, ... }, ...] 我尝试了select\u related,但是values()不会显示外键的详细
values()
方法用于QuerySet
,当存在外键(例如作者)时,结果如下:
[{ 'author_id':3, ... }, ...]
[{ 'author':{'name':'dave',...}, ... }, ...]
我想要的结果是:
[{ 'author_id':3, ... }, ...]
[{ 'author':{'name':'dave',...}, ... }, ...]
我尝试了
select\u related
,但是values()
不会显示外键的详细信息,我能做什么呢?AFAIK,Django没有内置的支持select_related
从不更改查询集的结果,仅更改访问相关对象时的查询数
您可以使用来获取与所需相似的内容。实现每个模型的unicode方法,并将其打印出来
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
再次阅读你的问题,我想我完全没有抓住要点。对于较新的django版本(1.7+),请参阅@Risadinha,你发布的链接对我来说也适用于django 1.3.7。。。