我使用“OrderingFilter”允许排序。 根据Django文档,不指定“ordering_fields”时,你可以通过在视图中串行提到的任何字段顺序。我有一个字段,它基本上是序列化程序中的@property字段。但是,试图通过现场订货的时候,我得到以下错误:Django的排序方式属性字段
Cannot resolve keyword 'spec_identifier' into field. Choices are:....
这是模型视图的一部分:
class ItemViewSet(BaseViewMixin, MyModelView):
permission_classes = [MyItemViewPermissions]
serializer_class = ItemSerializer
filter_backends = (ItemFilter, OrderingFilter,)
,这是属性定义我想订购:
@property
def spec_identifier(self):
return self.spec.identifier if self.spec else None
是否有可能通过它来订购?
我希望允许从客户端查询参数做到这一点 - “?排序= spec_identifier”使用OrderingfFilter,同其他领域 – user2880391
你尝试'?排序= spec__identifier'查询字符串中双下划线? –