django 4.2 自定义signal的使用方法

环境:win11 python3.9.2 django 4.2.11

背景:执行异步数据存储,想要使用该方法实现(失败了)

时间:20240410

说明:记录一下,避免忘记

1、创建django项目,并实现首页

python 复制代码
# 创建项目
django-admin startproject getfiction .  

# 在目录下新建views.py,并写入如下内容
# TestSignal/views.py

from django.shortcuts import HttpResponse


def index(request):
    return HttpResponse("OK")

# 修改路由
# TestSignal/urls.py

from django.contrib import admin
from django.urls import path
from TestSignal.views import index

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', index)
]

测试:

2、创建信号并实现执行

python 复制代码
# TestSignal/views.py

from django.shortcuts import HttpResponse
from django.dispatch import Signal, receiver

# 创建信号
my_signal = Signal()


@receiver(my_signal)
def test_signal(sender, **kwargs):
    return kwargs['info']


def index(request):
    msg = my_signal.send(sender=None, info="hello world")
    return HttpResponse(str(msg[0][1]))

执行结果

相关推荐
Shang180989357262 小时前
T41LQ 一款高性能、低功耗的系统级芯片(SoC) 适用于各种AIoT应用智能安防、智能家居方案优选T41L
人工智能·驱动开发·嵌入式硬件·fpga开发·信息与通信·信号处理·t41lq
linuxxx11016 小时前
django中request.GET.urlencode的使用
后端·python·django
星空的资源小屋18 小时前
Text Grab,一款OCR 截图文字识别工具
python·django·ocr·scikit-learn
言之。1 天前
【Django】基础1(万字讲解)
django
listhi5201 天前
基于空时阵列最佳旋转角度的卫星导航抗干扰信号处理的完整MATLAB仿真
开发语言·matlab·信号处理
yzx9910131 天前
基于Django的智慧园区管理系统开发全解析
后端·python·django
我想吃余2 天前
Linux信号(下):信号保存和信号处理
linux·运维·信号处理
FPGA_ADDA2 天前
基于VU13P的6U VPX 载板
fpga开发·信号处理·xcvu13p
路长冬2 天前
matlab与数字信号处理的不定期更新
开发语言·matlab·信号处理
lzptouch2 天前
Django项目
后端·python·django