@bituke

Как настроить фильтрацию в drf используя фукнции модели, а не ее поля?

models.py
class SelectedData(models.Model):
	user = models.ForeignKey(User, on_delete=models.CASCADE)
	data1 = models.DateField()

	def user_name(self):
		return self.user.first_name

	def data(self):
		data = self.data1.strftime("%Y-%m-%d")
		return data


views.py
from rest_framework import generics
from ..models import SelectedData
from django_filters.rest_framework import DjangoFilterBackend
from .serializers import SubjectSerializer


class SubjectListView(generics.ListAPIView):
	queryset = SelectedData.objects.all()
	serializer_class = SubjectSerializer
	filter_backends = [DjangoFilterBackend]
	filterset_fields = ['user']


Он может фильтровать только по полю "user", когда мне нужна фильтрация по имени пользователя, а не id юзера. То есть нужно настроить фильтрацию, что бы она работала не только с полями модели, но и ее функциями. Подскажите, как это можно сделать?
  • Вопрос задан
  • 194 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы