Skip to main content

Django admin rq is a django package that creates a 4 step (form, preview, main, complete) asynchronous workflow from a ModelAdmin's changelist or changeform.

Project description

# Django Admin RQ

Django admin rq is a django package that creates a 4 step (form, preview, main, complete) asynchronous workflow from a ModelAdmin’s changelist or changeform. By using the JobAdminMixin class in your ModelAdmin subclass you can define and run jobs by overriding appropriate inherited methods. It builds upon [django-rq][django-rq].

[django-rq]: https://github.com/ui/django-rq

# Installation

  • Setup django-rq according to documentation
  • pip install django-admin-rq
  • Add django_admin_rq to your INSTALLED_APPS
  • Add django-admin-rq.urls to your url config
url(r'^django-admin-rq/', include('django_admin_rq.urls')),
  • Add custom execption handler to queues: `settings.py`
RQ_QUEUES = {
    'default': {
        'HOST': 'localhost',
        'PORT': 6379,
        'DB': 0,
        'DEFAULT_TIMEOUT': 360,
    }
}
RQ = {
    'EXCEPTION_HANDLERS': ['django_admin_rq.exceptions.exception_handler']
}
  • Decorate your async tasks with the @job decorator.
  • They take the three arguments all of which need to be pickleable: - An instance of django_admin_rq.models.JobStatus - The form data from step 1 - An extra context object you provide if necessary
from rq import get_current_job
from django_rq import job

@job
def async_task(job_status, form_data, extra_context):
    job = get_current_job()
    job_status.set_job_id(job.get_id())
    job_status.start()

    ... do your job

    job_status.finish()

Project details


Download files

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

Files for django-admin-rq, version 0.2.0
Filename, size File type Python version Upload date Hashes
Filename, size django-admin-rq-0.2.0.tar.gz (13.0 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page