tengo la siguiente configuración con un apio fresco instalado y Django 1.4:Apio: la detección automática no encuentra módulo de tareas en la aplicación
settings.py:
import djcelery
djcelery.setup_loader()
BROKER_HOST = 'localhost'
BROKER_PORT = 5672
BROKER_USER = 'user'
BROKER_PASSWORD = 'password'
BROKER_VHOST = 'test'
[...]
INSTALLED_APPS = [
'django.contrib.auth',
'django.contrib.admin',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.staticfiles',
'djcelery',
'south',
'compressor',
'testapp',
]
testapp/tasks.py:
from celery.task import task
@task()
def add(x, y):
return x + y
La entrega de mensajes al apiario funciona bien, pero la tarea siempre está no registrada (por lo que el descubrimiento automático no parece funcionar correctamente aquí). Solo si importo el módulo de tareas en tasks/__init__.py
, la tarea se encuentra y puedo usarla.
También la documentación era un poco confusa sobre la importación del decorador, pero creo que esta es la correcta ahora.
¿Dónde está el error en mi configuración?
Voy a probar esto más tarde, pero como veo en Pypi, 2.5.5 fue lanzado ayer, ¡así que esta es una muy buena información! – Martin
Sí, esto funcionó :) – Martin