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

执行结果

相关推荐
互联网搬砖老肖2 小时前
Python 中如何使用 Conda 管理版本和创建 Django 项目
python·django·conda
刘小小_算法工程师10 天前
「ECG信号处理——(18)基于时空特征的心率变异性分析」2025年6月23日
信号处理
沛沛老爹10 天前
Python Django全功能框架开发秘籍
python·django·orm·web开发·模板引擎·项目部署·表单处理
Q_Q196328847510 天前
python基于微信小程序的广西文化传承系统
开发语言·spring boot·python·微信小程序·django·flask
程序员爱钓鱼10 天前
Go Web开发框架实践:模板渲染与静态资源服务
后端·django·go
zhangfeng113310 天前
MocapApi 中文文档 和github下载地址 NeuronDataReader(以下简称 NDR)的下一代编程接口
github·信号处理
Q_Q196328847511 天前
python高校教务管理系统
开发语言·spring boot·python·django·flask·node.js·php
风靡晚11 天前
汽车毫米波雷达增强感知:基于相干扩展和高级 IAA 的超分辨率距离和角度估计.
算法·汽车·信息与通信·信号处理·fmcw
里探11 天前
Django中为api自定义一些装饰器:如参数校验等
python·django·装饰器模式
猫头虎12 天前
2025最新Python 100个常用函数在线体验项目
android·java·python·pycharm·django·pandas·pip