Home - notanumber/xapian-haystack GitHub Wiki

Xapian-haystack aims to bring Xapian search engine to the Haystack search API for Django.

Haystack features supported

  • Indexing
    • fields: BooleanField, CharField, FloatField, DateField, DateTimeField, MultivaluedField, DecimalField
    • spelling suggestions, word stems (multiple languages), literal words (e.g. url addresses)
    • boost of fields
  • Search
    • content search in full document
    • search by fields
    • filtered search (__contains, __in, __exact, __startswith, all comparisons)
    • boost of terms
    • EdgeNgram and Ngram
  • Results
    • sort by field value, sort by score
    • custom result classes
  • Aggregation (facets)
    • computed in Xapian: facets
    • computed in Python: date facets, query facets, multivalued facets

Apart from __contains, filters work in the same way as Django. __contains has no equivalence in Django since both Django __contains and __search perform a boolean search, while Xapian uses a BM25 search.

Haystack features not supported

  • Highlight (see issue #34)
  • Spatial search (not supported)