flask入门教程(12) - 信号

信号

今天我们来学习信号,信号是由blinker库提供的,现在我们来看看吧。

安装

pip install blinker

示例

示例代码如下:

# app.py
import os

from flask import Flask, render_template, session
from blinker import signal

app = Flask(__name__)
app.secret_key = os.urandom(24)

def connector(signal, **kw):   # 订阅者函数
    """
    :param signal: 发送过来的信息
    :param **kw: 其它以字典形式呈现的数据 
    """
    data = "get a signal: " + signal + ", data:" + str(kw)
    session["data"] = data

@app.route("/")
def index():
    signal_1 = signal("index-1")   # 信号发送者
    signal_1.connect(connector)   # 订阅者订阅此发送者
    signal_1.send("signal from index-1", index="/")   # 发送信号
    return render_template("index.html", data = session["data"])   # 数据传给index

if __name__ == "__main__":
    app.run(debug=True)

注释皆在代码中。

主要有订阅者和发送者两个概念,如果需要更详细的解析,可以自行google。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值