Schedules ========= Schedules are regular Django models. You can manage them through the :ref:`admin_page` or directly from your code with the :func:`schedule` function or the :class:`Schedule` model: .. code:: python from django_q import Schedule, schedule # Use the schedule wrapper schedule('math.copysign', 2, -2, hook='hooks.print_result', schedule_type=Schedule.DAILY) # Or create the object directly Schedule.objects.create(func='math.copysign', hook='hooks.print_result', args='2,-2', schedule_type=Schedule.DAILY ) Reference --------- .. py:function:: schedule(func, *args, hook=None, schedule_type='O', repeats=-1, next_run=now() , **kwargs) Creates a schedule :param str func: the function to schedule. Dotted strings only. :param args: arguments for the scheduled function. :param str hook: optional result hook function. Dotted strings only. :param str schedule_type: (O)nce, (H)ourly, (D)aily, (W)eekly, (M)onthly, (Q)uarterly, (Y)early or :attr:`Schedule.TYPE` :param int repeats: Number of times to repeat schedule. -1=Always, 0=Never, n =n. :param datetime next_run: Next or first scheduled execution datetime. :param kwargs: optional keyword arguments for the scheduled function. .. class:: Schedule A database model for task schedules. .. py:attribute:: func The function to be scheduled .. py:attribute:: hook Optional hook function to be called after execution. .. py:attribute:: args Positional arguments for the function. .. py:attribute:: kwargs Keyword arguments for the function .. py:attribute:: schedule_type The type of schedule. Follows :attr:`Schedule.TYPE` .. py:attribute:: TYPE `ONCE`, `HOURLY`, `DAILY`, `WEEKLY`, `MONTHLY`. `QUARTERLY`, `YEARLY` .. py:attribute:: repeats Number of times to repeat the schedule. -1=Always, 0=Never, n =n. When set to -1, this will keep counting down. .. py:attribute:: next_run Datetime of the next scheduled execution. .. py:attribute:: task Name of the last task generated by this schedule. .. py:method:: last_run() Admin link to the last executed task. .. py:method:: success() Returns the success status of the last executed task.