Sequelize 中文API文档-8. 钩子函数的使用、Hooks相关API
Hooks
(钩子)是指会在模型生命周期的特殊时刻被调用的函数,如:模型实例被创建前会调用beforeCreate
函数,而在模型实例创建后又会调用afterCreate
函数。通过这些钩子函数,使用我们具有在生命周期的特殊时刻访问或操作模型数据的能力。
Hooks
(钩子)是指会在模型生命周期的特殊时刻被调用的函数,如:模型实例被创建前会调用beforeCreate
函数,而在模型实例创建后又会调用afterCreate
函数。通过这些钩子函数,使用我们具有在生命周期的特殊时刻访问或操作模型数据的能力。
在使用sequelize.define
方法定义模型时,我们一般会为模型属性(列)指定类型type
,它表示数据类型,Sequelize会按指定的类型在数据库中创建字段。这些类型被定义到了sequelize模块的DataTypes
类中,它是一个静态类可以直接引用其属性或方法。
本文是对Sequelize 中文API文档系列文章的综合索引,及对sequelize
模块和其内置对象的一些介绍,旨在帮助人们更好了解和使用Sequelize。
在HTTP协议中,multipart/form-data
格式用于向服务器发送二进制数据,通过这一内容类型(Content-Type
)可以实现文件、图片的上传。由于这种格式发送的是二进制数据,在服务器端接收和处理数据时会与其它内容类型有所有区别。
redis
(node_redis)模块中文文档:Redis 常用于跨进程、跨服务器的数据缓存服务,如:使用Redis存储Session
会话数据等。Node.js 中了连接Redis要使用redis
(node_redis
)模块,该模块是一个完整的、功能丰富的Node.js Redis 客户端,它支持所有Redis命令且注重于高性能特征。
HTTP实现文件下载时,只要在服务器设置好相关响应头,并使用二进制传输文件数据即可,而客户端(浏览器)会根据响应头接收文件数据。而在Node.js中,设置好响应头后,读取文件流,再使用.pipe()
方法将流转接到响应对象Response
就可以实现一个简单的文件下载服务器。
笔者所参与的一个APP项目中,有一个上传多个张图片的需求。虽然之前已经通过“formidable”模块实现了文件/图片的接收,但只能上传一张图片,要满足多张图片上传还要做一些处理。
阅读全文Promise
对象已在ECMAScript 2015中被写入标准,且已被最新版本的浏览器和Node.js/IO.js所支持。bluebird
是一个第三方Promise
规范实现库,它不仅完全兼容原生Promise
对象,且比原生对象功能更强大。
Request
是一个Node.jsNPM
模块,它是一个HTTP客户端,使用简单功能确十分强大。我们可以用它来实现HTTP响应流的转接、模拟Form
表单提交、支持HTTP认证、OAuth登录、自定义请求头等。本站曾简单介绍过Request模块的使用,本文是对这个模块的完整介绍,亦可做为Request中文文档使用。