I'm using on Backend the djjango-filter, and is working well, here the code of views,py, where i set the filters:
queryset = Usuarios.objects.all().order_by('id')
serializer_class = UserSerializer
filter_backends = [DjangoFilterBackend]
filterset_fields = ['funcao', 'is_staff', 'agencia']
class GroupViewSet(viewsets.ModelViewSet):
queryset = Group.objects.all()
serializer_class = GroupSerializer
class UnitiesViewSet(viewsets.ModelViewSet):
queryset = Unidades.objects.all().order_by('id')
serializer_class = UnitiesSerializer
filter_backends = [DjangoFilterBackend]
filterset_fields = ['tipo', 'sistemas']
class AtivosAdminViewSet(viewsets.ModelViewSet):
queryset = Ativos_Administrativos.objects.all().order_by('id')
serializer_class = AtivosAdminSerializer
filter_backends = [DjangoFilterBackend]
filterset_fields = ['tipo_ativo', 'classe_ativo', 'status']
class AtivosOperationalViewSet(viewsets.ModelViewSet):
queryset = Ativos_Operacionais.objects.all().order_by('id')
serializer_class = AtivosOperacionaisSerializer
filter_backends = [DjangoFilterBackend]
filterset_fields = ['tipo_ativo', 'tipo_investimento', 'status', 'etapa_do_servico']```
but actually i can't do the logic to get the filters on frontend and filter. On frontend i am using Axios and react-query.
```export async function getUsersFilters(filters: any) {
try {
const response = await api.get('/usuarios/', {params: filters})
return response.data
} catch (error) {
console.error(error)
throw error
}
}
export const useGetUsersFilters = (filters: any) => {
return useQuery({
queryKey: [QUERY_KEYS.GET_USERS_FILTERS, filters],
queryFn:() => getUsersFilters(filters),
staleTime: 1000 * 60 * 5,
retry: 1,
refetchOnWindowFocus: false
})
}```