Django Signals.py. Как объединить приемник и инициировать функцию в новом потоке - PullRequest
0 голосов
/ 19 марта 2020

, который является наилучшим способом объединения Django получателя из signal.py и запуска функции в новом потоке.

Пример с post_delete и post_save:

from django.db.models.signals import post_delete, post_save
from django.dispatch import receiver

@receiver(post_delete, sender=Application)

def test_delete_function(sender, instance,  **kwargs):
    if isinstance(instance, Application):
          deletefunc()


@receiver(post_save, sender=Application)

def test_save_function(sender, instance, **kwargs):
    if isinstance(instance, Application):
          savefunc()

Итак, Q1: Это хороший способ для express разных типов приемников - @receiver и затем функций после этого?

Q2: При сохранении приложения из внешнего интерфейса с помощью POST функция test_save_function запускается в том же потоке. Как запустить test_save_function в другом потоке? - Я ожидал, что это будет обработано Django Framework, но, похоже, мне нужна дополнительная настройка?

Спасибо!

...