Skip to main content

...

Project description

dj-scheduledtasks

Run tasks at a scheduled time

PyPI version

Installation

pip install

pip install dj-scheduledtasks

add to installed apps:

INSTALLED_APPS = [
    ...
    'scheduledtasks',
]

Getting started

from scheduledtasks.models import ScheduledTask

Adding a reverse lookup to your model

You might want to be able to access the list of scheduled tasks on a model. To make this easy, you can add a GenericRelation field

from django.contrib.contenttypes.fields import GenericRelation
from scheduledtasks.models import ScheduledTask

class Todo(models.Model):
    ...
    scheduled_tasks = GenericRelation(ScheduledTask)

You can then access scheduled_tasks_set just as you would any other ForeignKey field

Schedule a task:

Explicit schedule

# minimal usage
ScheduledTask.schedule('example_project.tasks.remind_if_due')
# minimal usage
ScheduledTask.schedule('remind_if_due')

Schedule from a related object

You can also schedule infer the scheduled time from an object by passing the object instance, a field and an offset. e.g.:

# run a task 60 minutes after the due date
ScheduledTask.schedule_by_object(
    todo,
    'example_project.tasks.remind_if_due',
    'due_date',
    offset=60
)

.. or just use the model directly

Create a task

Ways to run a task

Cleanup old tasks

Project details


Download files

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

Source Distribution

dj-scheduledtasks-0.0.3.tar.gz (4.8 kB view details)

Uploaded Source

File details

Details for the file dj-scheduledtasks-0.0.3.tar.gz.

File metadata

  • Download URL: dj-scheduledtasks-0.0.3.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.7.5

File hashes

Hashes for dj-scheduledtasks-0.0.3.tar.gz
Algorithm Hash digest
SHA256 f43847c72c264f7bf3fdaa3d9b4372b5606dbbbb00fb7df6172456d5f05310b8
MD5 1a7c00c2a9495dc6aed8398b9e96811b
BLAKE2b-256 70f4aa80b5fedde1954f70736b80ee39f2b7ec6a84c12407b5610398a71c935c

See more details on using hashes here.

Supported by

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