在Tastypie中,您可以使用order_by对API响应进行排序,如:
www.yourbaseurl.com/api/v1/model/?order_by=field_to_sort_by
你如何通过外国领域订购?
e.g。假设
Model Local (id, localfield, foreign)
Model Foreign (id, foreign_field)
我试过了:
www.yourbaseurl.com/api/v1/model/?order_by=foreign__foreign_field
答案 0 :(得分:2)
您是否在订购列表中包含了外键(在Meta中)...!
class Meta:
ordering = [<your foreign key field>]
但值得一提的是,它与过滤功能不同。我的意思是在过滤中你还需要在外键ModelResource 的过滤选项中指定特定的字段名称。但是在订购的情况下你不需要这样做,只需在订购中指定外键字段名称然后你就可以通过 foreignkeyfield__fieldname 来提及它的所有字段,它确实如此。无论外键ModelResource 在订购清单中是否有该字段。
答案 1 :(得分:-2)
您可以在资源中创建外键引用,如
class LocalResource(Local):
foreign = fields.ForeignKey(LocalResource, full=True)
class Meta:
然后在您的api电话中,您可以执行以下操作。
www.yourbaseurl.com/api/v1/model/?order_by=foreign__field=value