所以想象你正在做类似
的事情books = Book.objects.all().order_by('shopsales__qty')
其中shopsales
是对ShopSales
模型的引用,该模型存储特定商店的特定图书的销售情况,因此ForeignKey
字段返回Book
模型和qty
字段。
现在,上面的内容将从您的图书表格中获取所有图书,这些图书由不同表格中的字段排序。为此,生成的SQL将具有连接,并将shopsales__qty
字段添加到SELECT
字段列表以及Book模型本身的所有字段。但是,如果您随后浏览了退回的书籍,则看起来用于订购的外国字段已被丢弃..(即使已经选择了......为了订购)。
有没有办法让该字段保留在返回的Book
个对象中?
答案 0 :(得分:0)
您可以使用value()
books = Book.objects.all().order_by('publisher__revenue').value('title','publisher__revenue')
如果您需要更多属性,可以将其添加到value()