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

执行结果

相关推荐
开开心心就好4 小时前
电脑睡眠智能管控:定时、依状态灵活调整,多模式随心选
javascript·windows·python·安全·django·pdf·电脑
l软件定制开发工作室7 小时前
Django系列教程(5)——Django模型详解
django
小胖墩有点瘦9 小时前
基于Python+Django的网上招聘管理系统
开发语言·python·django
l软件定制开发工作室9 小时前
Django系列教程(4)——实例项目任务管理小应用
django
千里码aicood9 小时前
【2025】基于Python+Django的酒店民宿预订管理系统(源码+调试+答疑+学习资料)
服务器·数据库·python·django
声声codeGrandMaster9 小时前
Django模板语法及静态文件
数据库·django·sqlite
benben04414 小时前
Django小白级开发入门
后端·python·django
大只因bug18 小时前
基于Django的协同过滤算法养老新闻推荐系统的设计与实现
后端·python·django·协同过滤算法推荐系统·新闻推荐网站系统·养老新闻推荐系统·个性化新闻推荐网站系统
jay丿19 小时前
Django 模型的逆向工程
数据库·django·sqlite
芳姐聊互联网职场1 天前
基于Python实现的智能旅游推荐系统(Django)
python·django·毕业设计