Signals demo

This commit is contained in:
Scot Hacker 2019-04-23 23:27:04 -07:00
parent befc7ad2cd
commit 470e471678
2 changed files with 30 additions and 0 deletions

24
todo/signals.py Normal file
View file

@ -0,0 +1,24 @@
import django.dispatch
from django.dispatch import receiver
from todo.utils import toggle_task_completed
# ### REGISTER SIGNALS ###
# Demonstrates registering a custom signal
pizza_done = django.dispatch.Signal(providing_args=["toppings", "size", "task_id"])
# ### HANDLE SIGNALS ###
# Demonstrates receiving a custom signal
# (which in turn calls an existing todo function, but could do anything)
@receiver(pizza_done)
def toggle_task_handler(sender, **kwargs):
print(sender)
print(kwargs)
task_id = kwargs.get("task_id")
results = toggle_task_completed(task_id)
print(results)
print("Request finished!")