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]))

执行结果

相关推荐
小咕聊编程3 小时前
教育大数据可视化系统
python·django·flask
156082072193 小时前
JFMZQ28DR、JFMZQ68DR、RFsoc XCZU47DR、XCZU48DR 信号处理板
fpga开发·信号处理
高洁019 小时前
大模型检索增强生成(RAG)的技术原理与架构设计
人工智能·深度学习·机器学习·django·迁移学习
小咕聊编程10 小时前
基于Django的个人摄影博客网站设计与开发
后端·python·django
treasure14012 小时前
Django复习笔记(2026年10月)
后端·python·django·api·web·drf
联丰迅声21 小时前
城市生命线的“听觉”缺口:声振感知如何补上监测闭环
信号处理·故障诊断·传感器·城市生命线
花月mmc1 天前
FPGA数字信号处理与深度学习
嵌入式硬件·深度学习·fpga开发·信号处理
ycydynq1 天前
django 添加信息时,对外键设置条件
数据库·python·django
智购科技无人售货机厂家2 天前
自动售货机物联网平台为什么会出现在线状态不一致?~YH
python·单片机·嵌入式硬件·django·pygame
FYKJ_20102 天前
springboot高考志愿填报推荐系统14332-计算机课程设计、毕业设计
javascript·spring boot·python·架构·django·课程设计·高考