This project urgently needs new maintainers!
The current maintainers are no longer actively using drf-haystack
and would
like to hand over the project to other developers who are using the package.
We will still do the bare minimum maintenance of keeping dependency references up to date with new releases of related packages until January 1st 2026.
If by that time no new maintainers have joined to take over the project, we will archive the project and make the repository read-only, with a final release with whatever versions the dependencies have at that time.
This gives everyone more than a year to either consider joining as maintainers or switch to other packages for handling their search in DRF.
The drf-haystack
maintainers, November 2024
Small library which tries to simplify integration of Haystack with Django REST Framework. Fresh documentation available on Read the docs!
$ pip install drf-haystack
We aim to support most features Haystack does (or at least those which can be used in a REST API). Currently, we support:
from drf_haystack.serializers import HaystackSerializer
from drf_haystack.viewsets import HaystackViewSet
from myapp.search_indexes import PersonIndex # You would define this Index normally as per Haystack's documentation
# Serializer
class PersonSearchSerializer(HaystackSerializer):
class Meta:
index_classes = [PersonIndex]
fields = ["firstname", "lastname", "full_name"]
# ViewSet
class PersonSearchViewSet(HaystackViewSet):
index_models = [Person]
serializer_class = PersonSerializer
That's it, you're good to go. Hook it up to a DRF router and happy searching!