跳转到主要内容

Bungiesearch的Celery信号处理器

项目描述

https://travis-ci.org/afrancis13/celery-bungiesearch.svg?branch=master

一个仓库,将提供的Bungiesearch信号处理类封装在自己的celery任务中。

这个Django应用程序允许您使用Celery自动更新和删除Bungiesearch搜索索引中的对象。

与Bungiesearch的最新版本兼容,类似于Haystack,但直接与elasticsearch-dsl交互,因此允许使用更多的自定义排名函数。

安装

pip install celery-bungiesearch

要求

用法

1. 在设置中将'celery_bungiesearch'添加到INSTALLED_APPS

INSTALLED_APPS = [
    # ..
    'celery_bungiesearch',
]

2. 在设置中将CelerySignalProcessor添加到settings.BUNGIESEARCH['SIGNAL_CLASS']。这将确保任何由BungiesearchManager管理的模型都获得CelerySignalProcessor作为信号处理器。

from celery_bungiesearch import CelerySignalProcessor

BUNGIESEARCH = {
   # ..
   'SIGNALS': {
       'SIGNAL_CLASS': 'celery_bungiesearch.signals.CelerySignalProcessor',
       'BUFFER_SIZE' : 100
   }
}

3. 在您的设置文件中添加celery-bungisearch配置变量。以下任务为默认版本,但您可以根据需要包含自己的自定义类(注意,以下环境变量都不是必需的,可以完全从设置文件中排除)

CELERY_BUNGIESEARCH_QUEUE = None
CELERY_BUNGIESEARCH_TASK = 'Your custom index task path'
CELERY_BUNGIESEARCH_CUSTOM_TASK = 'Your custom celery task path'

4. 确保您的Celery实例正在运行。

测试

您可以通过运行命令toxtox test在本地运行celery-bungiesearch的测试。您必须有一个本地的elasticsearch实例。您还可以使用Travis CI进行持续集成测试(在README顶部的构建状态)。

谢谢

此应用程序大量借鉴了Jannis Leidel的celery-haystack以及Christopher Rabotin的Bungiesearch,后者是本项目灵感的来源。

问题

请提交拉取请求或使用Github问题跟踪器进行任何错误修复、错误报告或功能请求。

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

celery-bungiesearch-1.2.4.tar.gz (6.4 kB 查看哈希)

上传时间

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面