8. Python: xappy2.server
PUT to /v1/dbs/dbname
POST to /v1/dbs/dbname/schema/fields/text
{ 'type': 'text', 'freetext': {'language': 'en'} } }
POST to /v1/dbs/dbname/docs
{ 'text': ['foo'] }
(or PUT to /v1/dbs/dbname/docs/docid)
9. Python: Zope: ore.xapian
Zope style layer on top of xappy:
class Content( object ):
... implements( interfaces.IIndexable )
Asynchronous loading/updating, event integration,
etc
10. Python: Django: Djapian
Django integration layer on top of xapian
import djapian
class EntryIndexer(djapian.Indexer):
fields=["text"]
Tags=[ ("content", "content.text" ) ]
11. Python: Django: Haystack
Another Django integration layer on top of xapian
from haystack import indexes
class TextIndex(indexes.SearchIndex):
text = indexes.CharField(document=True,
use_template=True)