LeaderboardAPI : Я хочу показывать только сегодняшнюю запись, сравнивая ее с датой создания
Мой Modely.py. Я храню имя игрока, TotalPoints, created_date с помощью POST API
from django.db import models
from django.utils.translation import ugettext as _
# Create your models here.
class leaderboard(models.Model):
name = models.CharField(_("playername"), max_length=255)
TotalPoints = models.IntegerField(_("TotalPoints"))
created_date = models.DateTimeField(auto_now_add=True)
Мой файл Serializers.py:
Это мой Searializer:
from rest_framework import serializers
from .models import leaderboard
class leaderboardSerializers(serializers.ModelSerializer):
class Meta:
model = leaderboard
fields = [
'name',
'TotalPoints',
]
class lwithcdateSerializers(serializers.ModelSerializer):
class Meta:
model = leaderboard
fields = [
'name',
'TotalPoints',
'created_date',
]
Мои взгляды
class Leaderboard(APIView):
def get(self, request, formate=None, **kwargs):
today = datetime.date.today()
serializer = lwithcdateSerializers(leaderb.objects.all().order_by('-TotalPoints')
[:40], many=True)
return Response(serializer.data)
Пожалуйста, проверьте приведенный выше код и сообщите мне, как я могу отобразить только сегодняшнюю запись
Вам необходимо фильтр на created_date
колонке.
serializer = lwithcdateSerializers(leaderb.objects.filter(created_date__date=today).order_by('-TotalPoints')