我有两种型号:
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过滤器实现此目标的最佳方法是什么?