我有一个包含Book
对象的查询集。如何通过多对多的相关对象来定购查询集值?
Book
与Author
的关系为m2m。
我想按照第一作者的姓名排序查询集中的图书(作者按字母顺序排序,因此第一个将是姓氏在字母表中排在第一位的图书)。
我想这将是聚合的东西,但我似乎无法找到什么是正确的解决方案。
我已经试过
books_qs.annotate(first_author=Min('author__lastname')).order_by('first_author')
但当然是不正确的类型,所以我得到面临ValueError: could not convert string to float: Folland
。
我应该怎么办?
编辑:Django的1.4.2 + MySQL的
是的,这就是我在我的问题中写的(对于浮动事物)。 我希望书籍按作者姓名排序。说book1有作者'Doe','Simons',book2有作者'Clark',book3有作者'Webster','Albert。我希望命令是[book3,book2,book1],因为有序的作者是['Albert','Clark','Doe']。 – rxdazn