我正在研究用Django编写的API。
我有类似的模型:
class foodprices(models.Model):
price_description = models.TextField(blank=True,null=True)
price = models.FloatField(max_length=8)
class food(models.Model):
name = models.Charfield(max_length=100)
price_ids = models.ManyToManyField(foodprices,blank=True)
#I have multiple prices for single food object
在我看来:
class foodviewset(ModelViewSet):
queryset = food.objects.all()
serializer_class = food_serializer
filter_backends = (filters.OrderingFilter)
ordering_fields = ('price_ids__price',)
如果我的食物对象只有单一价格,这个订单会正常工作。 在我的情况下,我想根据食物表中的第一个price_id来订购食物。我想省略所有其他价格,除了第一次订购。
我想要这样的事情
ordering_fields = ('price_ids__price[0]',)
内置的Django过滤器有可能吗?