DRF和Django过滤器-过滤相关对象

时间:2019-03-13 21:53:42

标签: python django django-rest-framework django-filters

我有两种型号:

class User(models.Model):
    name = models.CharField(max_length=255)

class Note(models.Model):
    timestamp = models.DateTimeField()
    user = models.ForeignKey(User)

两个都有序列化器:

class NoteSerializer(ModelSerializer):
    class Meta:
        model = User
        fields = '__all__'

class UserSerializer(ModelSerializer):
    class Meta:
        model = Note
        fields = '__all__'

    notes = NoteSerializer(
        many=True,
        read_only=True,
    )

现在,我需要一个端点,该端点将返回一个JSON,其中包含用户列表以及每个用户的相关注释。

这里的窍门是能够按日期范围过滤那些笔记。我想网址会像这样:

/api/clients/?range=month&date=2019-03

这表示:“给我一张所有用户的列表,以及他们的相关注释以及带有时间戳记的时间戳,这些注释的时间戳介于2019-03-01和2019-04-1之间。

问题是:使用Django过滤器实现此目标的最佳方法是什么?

0 个答案:

没有答案