Model  singnals
pre_init 在model执行构造方法之前自动触发
post_init django的model在执行构造方法之后,自动触发
pre_save django的对象保存之前,自动触发
post_save django的对象保存之后,自动触发
pre_delete 这个是django的对象删除之前,自动触发
post_delete django的的对象删除之后,自动触发
m2m_changed 使用m2m的第三张表(add,remove,clear)前后,自动触发
class_prepared 程序启动时,对已经注册的app的表,对于每一个类,自动触发 Management signals
pre_migrate 执行migrate命令之前,自动触发
post_migrate 执行migrate命令之后,自动触发
Request/Response  signals
request_started 请求到来之前,自动触发
request_finished 请求结束后,自动触发 Test signals
settings_chnaged 使用test测试配置文件时,自动触发
settings_rendered 使用test测试渲染模板是,自动触发 Databse signals
connections_created 这个是创建数据库的时候,自动触发 对于django的内置的信号,只需要注册相对应的信号(在project下的__init__最开始运行的时候里面注册),当程序执行的时候,就会自动触发
######################################################################################################
project_singal 下面的__init__里面:
#在这里面可以添加这个信号量

from   django.db.models   import  signals
#导入这个信号量的模块
print('执行这个singal的信号量的操作') #这个是一开始就会执行的操作
def before_save(*args,**kwargs):
print('打印出来',args,kwargs)
signals.pre_save.connect(before_save)
执行的结果:
'''
() {'signal': <django.db.models.signals.ModelSignal object at 0x0000022947A93080>, 'sender': <class 'app01.models.Booke'>, 'instance': <Booke: Booke object (None)>, 'raw': False, 'using': 'default', 'update_fields': None} '''
# //这个会打印这个日志出来 #################################################################################################
views:

from  app01.models import  *

from django.shortcuts import HttpResponse

def  action(requets):
print('开始执行这个fun3的函数了')
models.User.objects.filter(id=1).update(user_name='yun')##这个是可以更新这个数据进去
models.Book.objects.create(book_name='简爱')###############这个是创建这个数据进去
print('创建成功')
return HttpResponse('fun3')
###############################################################
models:
class Book(models.Model):
  book_name=models.CharField(max_length=32,verbose_name='书籍名字')
 
class  User(models.Model):
  user_name=models.Username(max_length=32)
												

django的内置信号的更多相关文章

  1. Django缓存和内置信号

    缓存 简单概括就是将对数据库操作查询所得到的数据放入另外一台机器上(缓存)中,当用户再次请求时,直接去缓存中拿,避免对数据库的频繁操作,加快数据的显示时间,需要知道的是,缓存里面的数据一般都设置有超时 ...

  2. Django内置信号

    阅读目录(Content) Django中内置的signal 自定义信号 1.定义信号 2.注册信号 3.触发信号 回到顶部(go to top) Django中内置的signal Django中提供 ...

  3. Django的内置登录、退出、修改密码方法

    Django中内置的登录.退出.修改密码方法. 1.url.py中使用django.contrib.auth中的views函数,django.views.generic中的TemplateView函数 ...

  4. 七十四:flask信号之flask的内置信号

    flask所有的内置信号 1.template_rendered:模板渲染完成后的信号2.before_render_template:模板渲染之前的信号3.request_started:模板开始渲 ...

  5. django 内置“信号”机制和自定义方法

    一.引子 在操作数据的时候,假设我们需要记录一些日志,这个时候,我们需要用什么来显示这个需求呢?装饰器?装饰器只能先实现整体的操作.在django 里面有这么一个东西--信号 下面我们就来了解了解它. ...

  6. django的内置分页

    本节内容 自定义一个简单的内置分页 Django内置分页 Django内置分页扩展(继承) 自定义内置组件 自定义一个简单的内置分页 先用django自己自定制一个简单的内置分页,大概掌握内置分页的底 ...

  7. Django 使用 内置 content-type

    django内置的content-type组件, 记录了项目中所有model元数据的表 可以通过一个ContentType表的id和一个具体表中的id找到任何记录,及先通过ContenType表的id ...

  8. Django扩展内置User类

    内置User类 使用内置User可以方便实现登录验证,利用Admin管理界面还可以方便添加.删除.修改用户. 一个内置的User类定义了以下字段: username: 用户名 password: 密码 ...

  9. django+mongodb 内置用户控制

    0x01 项目:django2.1 数据库:mongodb 这是一个很蛋疼的组合 mongodb并非官方支持使用的数据库,这意味着要使用user group permissions等进行用户和权限控制 ...

随机推荐

  1. 修改xshell的默认字间距和行间距

    可能是不小心修改了xshell的某个配置,导致打开的会话中显示字间距和行间距都非常大,严重影响工作.参照官方手册也不能修改正常,详见:http://www.xshellcn.com/wenti/xiu ...

  2. 细说REST API安全之防止重放攻击

    一. 重放攻击概述 百科对重放攻击的描述:https://zh.wikipedia.org/wiki/%E9%87%8D%E6%94%BE%E6%94%BB%E5%87%BB简而言之,重放攻击的产生是 ...

  3. C++解决case中不能定义局部变量问题

    case Operation::DeviceAuthen: { std::string token = root["body"]["token"].asStri ...

  4. Linux查看版本信息

    查看Linux版本以及是32位还是64位 查看版本 一.查看Linux内核版本命令(两种方法): 1.cat /proc/version [root@S-CentOS home]# cat /proc ...

  5. [C++]Linux之计算内存利用率与辨析

    声明:如需引用或者摘抄本博文源码或者其文章的,请在显著处注明,来源于本博文/作者,以示尊重劳动成果,助力开源精神.也欢迎大家一起探讨,交流,以共同进步,乃至成为朋友- 0.0 /* @url:http ...

  6. PHP面试(一):PHP基础知识考察点、网页考察点、Linux考察点、MySQL考察点

    一.基础知识考察 1.引用变量的概念及定义方式——引用变量的原理 2.常量及数据类型——字符串的三种定义方法及各自的区别 3.运算符的使用——错误控制符.运算符优先级 4.流程控制操作 5.自定义函数 ...

  7. Java基础_0205: 程序逻辑结构

    使用if语句进行判断 public class TestDemo { public static void main(String args[]) { double score = 90.0; // ...

  8. Oracle简单触发器应用

    1.Oracle触发器 1.当发生特定事件的时候要执行的一个过程. 2.触发器的分类及语法及解析 1.DDL 触发器 1.[CREATE,DROP,...] 2.DML触发器 1.[INSERT,DE ...

  9. 给tomcat 配置https

    参考以下链接 https://www.cnblogs.com/xiaoliao/p/5778262.html 本人使用环境和版本 tomcat 7.7 阿里云 centos 7还是red hat 浏览 ...

  10. 转:springmvc常用注解标签详解

    Spring5:@Autowired注解.@Resource注解和@Service注解 - IT·达人 - 博客园--这篇顺序渐进,讲得超级好--此人博客很不错http://www.cnblogs.c ...