Django: пользовательское действие с параметром даты не работает

У меня есть следующий код в Python Django:

@action(detail=True, methods=['get'], url_path=r'by_date')
def get_meal_by_date(self, request, meal_date=date.today):
    print(meal_date)
    meals_by_date = Meal.objects.filter(
        owner=self.request.user,
        mealTimestamp__day=meal_date.day,
        mealTimestamp__month=meal_date.month,
        mealTimestamp__year=meal_date.year
    )
    serializer = self.get_serializer(meals_by_date, many=True)
    return Response(serializer.data, status=status.HTTP_200_OK)

Такой код работает при вызове следующим образом:

http://localhost:8000/meals/by_date/

Моя проблема в том, как я могу обогатить метод, чтобы получить данные обратно с параметром даты.

Например, с помощью этого вызова:

http://localhost:8000/meals/by_date/2022-03-16T21:30:45.290Z/

В чем именно заключается ваша проблема, передаете ли вы дату в url? Это должно работать. path('adress/date:date/', что-то вроде этого. В вашем представлении получите дату.

Вернуться на верх