Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/django-haystack/celery-haystack
An app for integrating Celery with Haystack.
https://github.com/django-haystack/celery-haystack
Last synced: 4 days ago
JSON representation
An app for integrating Celery with Haystack.
- Host: GitHub
- URL: https://github.com/django-haystack/celery-haystack
- Owner: django-haystack
- License: bsd-3-clause
- Created: 2011-07-29T14:38:01.000Z (over 13 years ago)
- Default Branch: develop
- Last Pushed: 2024-10-14T10:02:05.000Z (about 1 month ago)
- Last Synced: 2024-10-31T22:32:54.684Z (13 days ago)
- Language: Python
- Homepage: http://celery-haystack.readthedocs.org/
- Size: 200 KB
- Stars: 224
- Watchers: 20
- Forks: 95
- Open Issues: 29
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
- Authors: AUTHORS
Awesome Lists containing this project
README
===============
celery-haystack
===============.. image:: https://secure.travis-ci.org/django-haystack/celery-haystack.png?branch=develop
:alt: Build Status
:target: http://travis-ci.org/django-haystack/celery-haystackThis Django app allows you to utilize Celery for automatically updating and
deleting objects in a Haystack_ search index.Requirements
------------* Django 1.8+
* Haystack_ `2.X`_
* Celery_ 3.XYou also need to install your choice of one of the supported search engines
for Haystack and one of the supported backends for Celery... _Haystack: http://haystacksearch.org
.. _Celery: http://www.celeryproject.orgInstallation
------------Use your favorite Python package manager to install the app from PyPI, e.g.::
pip install celery-haystack
For Django < 1.9 you need to install and configure `django-transaction-hooks`_ -- an app that
brings transaction commit hooks to Django... _django-transaction-hooks: https://github.com/carljm/django-transaction-hooks
Usage
-----1. Add ``'celery_haystack'`` to the ``INSTALLED_APPS`` setting
.. code:: python
INSTALLED_APPS = [
# ..
'celery_haystack',
]2. Enable the celery-haystack signal processor in the settings
.. code:: python
HAYSTACK_SIGNAL_PROCESSOR = 'celery_haystack.signals.CelerySignalProcessor'
3. Alter all of your ``SearchIndex`` subclasses to inherit from
``celery_haystack.indexes.CelerySearchIndex`` and
``haystack.indexes.Indexable``.. code:: python
from haystack import indexes
from celery_haystack.indexes import CelerySearchIndex
from myapp.models import Noteclass NoteIndex(CelerySearchIndex, indexes.Indexable):
text = indexes.CharField(document=True, model_attr='content')def get_model(self):
return Note4. Ensure your Celery instance is running.
Thanks
------This app is a blatant rip-off of Daniel Lindsley's queued_search_
app but uses Ask Solem Hoel's Celery_ instead of the equally awesome
queues_ library by Matt Croyden... _queued_search: https://github.com/toastdriven/queued_search/
.. _Celery: http://celeryproject.org/
.. _queues: http://code.google.com/p/queues/Issues
------Please use the `Github issue tracker`_ for any bug reports or feature
requests... _`Github issue tracker`: https://github.com/django-haystack/celery-haystack/issues