Django-chronograph es una aplicación que permite programar la ejecución de tareas automáticas de manage.py utilizando cron. Permite especificar las tareas a realizar y el intervalo de tiempo en el que se deben repetir mediante el sitio de administración de Django. Esto es muy útil para automatizar tareas repetitivas de nuestro proyecto como pueden ser enviar un e-mail semanal automático a todos los usuarios ó eliminar diariamente cuentas de usuarios inactivos. Django-chronograph también almacena un listado de logs visible desde el sitio de administración que nos permite comprobar los resultados de las tareas ejecutadas.
Para instalar django-chronograph basta con seguir los siguientes pasos:
Descarga python-dateutil si aún no lo tienes. Es necesario para django-chronograph.
Descarga la última versión de django-chronograph del repositorio mediante svn:
svn checkout http://django-chronograph.googlecode.com/svn/trunk/ django-chronograph-read-only
Añade la aplicación chronograph al setting INSTALLED_APPS y la siguiente URL a tu configuración de URLs en urls.py:
url(r'^admin/chronograph/job/(?P<pk>\d+)/run/$', 'chronograph.views.job_run', name="admin_chronograph_job_run")
Después ejecuta el comando manage.py syncdb para que se creen las tablas necesarias en la base de datos.
Añade la siguiente línea a tu crontab especificando la ruta en la que se encuentra el archivo manage.py de tu proyecto. Para editar las tareas cron utiliza el comando crontab -e
* * * * * python /path/a/tu/proyecto/manage.py cron
Después podrás gestionar tus tareas automáticas desde el sitio de administración de Django.

Publicado por Antonio Melé el Jueves 9 de Abril de 2009
Compártelo:
| Categorías:
admin,
aplicaciones,
pluggables
Algo interesante que nos aporta django-command-extensions es poder crear una representación gráfica de nuestros modelos (o por decirlo de otro modo nuestro esquema de ...
Las migraciones o evoluciones de esquema son las modificaciones que hacemos a modelos ya creados y que afectan a la base de datos. Cuando ...
Hace un par de días se ha liberado la versión 1.0 final de Haystack. Haystack es probablemente la forma más sencilla de añadir ...
oEmbed es un formato que permite usar una representación embebida de una URL en sitios web de terceros. La API de oEmbed permite a ...
Gracias por el link, justo estaba buscando algo así. Sin embargo tengo un problema con el Chronograph, me da un error de que el modelo Jobs ya está registrado, parece que lo está registrando dos veces?
La culpa parece tener la linea:
url(r'^admin/chronograph/job/(?P<pk>\d+)/run/$', 'chronograph.views.job_run', name="admin_chronograph_job_run")
Ya que ese view vuelve a invocar al módulo admin.py que vuelve a tratar de registrar el modelo Jobs...
Te ha tocado algún problema así? Yo estoy usando Django 1.0.2.
La verdad es que yo no he tenido problema utilizando un checkout de la versión de desarrollo de Django.
Veo que ya has abierto una issue y que tienes una solución temporal http://code.google.com/p/django-chronograph/issues/detail?id=13 a ver qué dicen los desarrolladores sobre ello.
Suscríbete a nuestro feed RSS y al feed de la comunidad para estar al tanto de todo lo que ocurre entorno a Django.
Tú también puedes escribir en éste blog. Para hacerlo basta con que nos digas sobre qué quieres escribir un artículo relacionado con Django.
Utilizar un formulario para modificar 2 modelos
Descubriendo objetos similares por sus etiquetas