dj-termsearch
Simple GET-based term searches for Django CBV's.
Documentation
The full documentation is at https://dj-termsearch.readthedocs.org.
Quickstart
Install dj-termsearch:
pip install dj-termsearch
Add "termsearch"
to your INSTALLED_APPS
then just add TermSearchMixin
to a view and go:
from django.db import models from termsearch.views import TermSearchMixin class MyModelListView(TermSearchMixin, ListView): model = MyModel term = "title" lookup = "iexact"
Check the results at:
https://example.com/list?q=barry
Advanced
Use a list
of model fields to use in the search:
class AnotherListView(TermSearchMixin, ListView): model = MyModel terms = ["title", "content", "author__name"] lookup = "iexact"
Map each field to a lookup type:
class YetAnotherListView(TermSearchMixin, ListView): model = MyModel term_mapping = { "title": "icontains", "tags__name": "iexact", "author__surname": "exact", }