skip to navigation
skip to content

Not Logged In

redis-completion 0.3.1

autocomplete with redis

Latest Version: 0.5.0

autocompletion with redis based on:

redis-completion is capable of storing a large number of phrases and quickly searching them for matches. Rich data can be stored and retrieved, helping you avoid trips to the database when retrieving search results.

check out the documentation for more info.

usage

If you just want to store really simple things, like strings:

engine = RedisEngine()
titles = ['python programming', 'programming c', 'unit testing python',
          'testing software', 'software design']
map(engine.store, titles)

>>> engine.search('pyt')
['python programming', 'unit testing python']

>>> engine.search('test')
['testing software', 'unit testing python']

If you want to store more complex data, like blog entries:

Entry.create(title='an entry about python', published=True)
Entry.create(title='all about redis', published=True)
Entry.create(title='using redis with python', published=False)

for entry in Entry.select():
    engine.store_json(entry.id, entry.title, {
        'published': entry.published,
        'title': entry.title,
        'url': entry.get_absolute_url(),
    })

>>> engine.search_json('pytho')
[{'published': True, 'title': 'an entry about python', 'url': '/blog/1/'},
 {'published': False, 'title': 'using redis with python', 'url': '/blog/3/'}]

# just published entries, please
>>> engine.search_json('redis', filters=[lambda i: i['published'] == True])
[{u'published': True, u'title': u'all about redis', u'url': u'/blog/2/'}]

installing

Install with pip:

pip install redis-completion

Install via git:

git clone https://github.com/coleifer/redis-completion.git
cd redis-completion
python setup.py install

schema

http://redis-completion.readthedocs.org/en/latest/_images/schema.jpg
 
File Type Py Version Uploaded on Size
redis-completion-0.3.1.tar.gz (md5) Source 2012-07-08 149KB
  • Downloads (All Versions):
  • 42 downloads in the last day
  • 309 downloads in the last week
  • 956 downloads in the last month