The Django package "thx-cron" provides functionalities for managing scheduled jobs (cron jobs) within a Django application. This package allows for defining, scheduling, and executing recurring or one-time operations based on specific time specifications. With "thx-cron," you can configure details of scheduled jobs such as execution time, frequency, one-time execution option, and more.



The "thx-cron" package seamlessly integrates with Django, providing an efficient way to manage scheduled jobs within web applications. The core of the package revolves around two main elements: the Job model and the JobLog model.

The Job model is responsible for defining the details of each scheduled job. These details include fundamental information such as when the job should be executed, how often, and what specific action should be taken. Additionally, it offers the flexibility to specify scheduling using cron expressions or by directly specifying the year, month, day, hour, and minute, thus making scheduling management more adaptable to the specific needs of the project.

On the other hand, the JobLog model acts as a log of the executions of scheduled jobs. Each time a job is executed, the model records important details such as the time taken, processing results, and the content of the log file. This allows tracking the performance of scheduled jobs and diagnosing any issues that may arise during execution.

In addition to these two fundamental models, the package also provides a range of additional features for managing job status. This includes methods for starting, completing, or reporting any errors for a specific job, as well as the ability to send notifications based on user-defined configurations. These additional features contribute to making the process of managing scheduled jobs more fluid and automated, allowing developers to focus on other critical aspects of the project.

Model structure

The "thx-cron" package is based on two main models for managing scheduled jobs and their logs:


  • Job: This model defines the details of scheduled jobs. You can think of it as a reminder for tasks that need to be automatically executed at a specific time or with a certain frequency.

  • JobLog: This model tracks the executions of scheduled jobs, recording details such as the time taken, results, and any errors.

In summary, the Job and JobLog models form the basic structure for managing scheduled jobs within the Django application, providing an organized and controlled way to automate recurring or specific tasks according to the project's needs.




Authors and contributors