Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

[django-celery-model](https://github.com/mback2k/django-celery-model) is an
extension to [Celery](https://github.com/celery/celery) and
[django-celery](https://github.com/celery/django-celery)
which adds support for tracking Celery tasks assigned to Django model instances.

Installation
------------
You can install the latest version from GitHub manually:

git clone https://github.com/mback2k/django-celery-model.git
cd django-celery-model
python setup.py install

or via pip:

pip install https://github.com/mback2k/django-celery-model/zipball/master

Configuration
-------------
Add the package to your `INSTALLED_APPS`:

INSTALLED_APPS += (
'djcelery',
'djcelery_model',
)

Example
-------
Add the TaskMixin to your Django model:

from django.db import models
from django.utils.translation import ugettext_lazy as _
from djcelery_model.models import TaskMixin

class MyModel(TaskMixin, models.Model):
name = models.CharField(_('Name'), max_length=100)

Queue an asynchronous task from your Django model instance:

from .models import MyModel
from .tasks import mytask

mymodel = MyModel.objects.get(name='test instance')
mymodel.apply_async(mytask, ...)

Retrieve list of asynchronous tasks assigned to your Django model instance:

mymodel.tasks.all()
mymodel.tasks.pending()
mymodel.tasks.started()
mymodel.tasks.retrying()
mymodel.tasks.failed()
mymodel.tasks.successful()
mymodel.tasks.ready()

Check for a running or ready asynchronous task for your Django model instance:

mymodel.has_running_task
mymodel.has_ready_task

Handle asynchronous task results for your Django model instance:

mymodel.get_task_results()
mymodel.get_task_result(task_id)
mymodel.clear_task_results()
mymodel.clear_task_result(task_id)

Filter your Django model based upon asynchronous tasks:

MyModel.objects.with_tasks()
MyModel.objects.with_pending_tasks()
MyModel.objects.with_started_tasks()
MyModel.objects.with_retrying_tasks()
MyModel.objects.with_failed_tasks()
MyModel.objects.with_successful_tasks()
MyModel.objects.with_running_tasks()
MyModel.objects.with_ready_tasks()

MyModel.objects.without_tasks()
MyModel.objects.without_pending_tasks()
MyModel.objects.without_started_tasks()
MyModel.objects.without_retrying_tasks()
MyModel.objects.without_failed_tasks()
MyModel.objects.without_successful_tasks()
MyModel.objects.without_running_tasks()
MyModel.objects.without_ready_tasks()

License
-------
* Released under MIT License
* Copyright (c) 2014 Marc Hoersken <info@marc-hoersken.de>

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-celery-model-0.0.3dev.zip (8.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django-celery-model-0.0.3dev.win32.exe (206.0 kB view details)

Uploaded Source

File details

Details for the file django-celery-model-0.0.3dev.zip.

File metadata

File hashes

Hashes for django-celery-model-0.0.3dev.zip
Algorithm Hash digest
SHA256 3cc1ea67eb848237d5def99f72ce44cc43900631ea4127c56214bb3b14dfec2f
MD5 29b3b281af7e2228d275f95d60cf2c0a
BLAKE2b-256 175eaf016b04e2af0a577262d2f8c182444f34af8a672ed91592fc37b048a33e

See more details on using hashes here.

File details

Details for the file django-celery-model-0.0.3dev.win32.exe.

File metadata

File hashes

Hashes for django-celery-model-0.0.3dev.win32.exe
Algorithm Hash digest
SHA256 9c5c30b6e5f5c1adcb263406b3c9e02031abbcaa58848383532bd529abecbd22
MD5 459520a7c4b5bad11acada25033aabd4
BLAKE2b-256 7e59de54c6a72fa189f24129ba677cdb33992b946cd320043185aee43f070b9e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page