Можем ли мы использовать сигналы django, чтобы в случае возникновения события в плагине A запускался обработчик, определенный в плагине B - PullRequest
0 голосов
/ 10 января 2019

Описание использования: В архитектуре плагинов, скажем, есть два плагина A, B, которые подключаются к хост-приложению. Теперь, если событие происходит в плагине A, обработчик должен вызываться в плагине B (в основном плагины должны иметь возможность публиковать / подписываться на события).

Плагины абсолютно независимы друг от друга и могут быть установлены / удалены в любой момент времени.

Структура каталогов выглядит примерно так: И если плагин A определяет собственный сигнал Django для определенного события, можем ли мы каким-то образом сделать этот пользовательский сигнал доступным для плагина B? Можем ли мы отправить какой-нибудь служебный модуль как часть хоста lib, который делает это возможным?

Host app
|
|-lib
|   | - base_classes.py
|   | - utils.py
|
|-plugins
|  |
|  |-plugin-A
|  | 
|  |
|  |-plugins-B
...