
egg-sequelize 定义关联关系
发布日期:2021-05-25 08:44:20
浏览次数:11
分类:博客文章
本文共 1075 字,大约阅读时间需要 3 分钟。
定义关联关系
app/mode/xxx.js 中通过给模型(类)添加associate
属性,属性值为一个function(){}
,方法中执行sequelize提供的建立关联关系的方法,例如 belongsTo等
egg-sequelize 插件在loadDatabase
的时候会associate()
,建立模型之间的关系
module.exports = app => { const { BIGINT, STRING } = app.Sequelize; const User = app.model.define('users', { id: { type: BIGINT, primaryKey: true, autoIncrement: true, }, team_id: BIGINT, name: STRING, }); User.associate = function () { app.model.User.belongsTo(app.model.Team, { foreignKey: 'team_id' }); }; return User;};
sequelize V4版本修改了:
Removed classMethods
and instanceMethods
options from sequelize.define
. Sequelize models are now ES6 classes. You can set class / instance level methods like this
const Model = sequelize.define('Model', { ...});// Class MethodModel.associate = function (models) { ...associate the models};// Instance MethodModel.prototype.someMethod = function () {..}
执行数据库操作,例如 findAll
的时候,如果 include
了 model
,执行之前会 model
之间的关联关系。如果没有提前定义,则 ${targetModel.name} is not associated to ${this.name}!
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2025年04月15日 12时21分05秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
HERest源码解析
2019-03-16
java 原型模式(大话设计模式)
2019-03-16
微机原理 6-计算机中常用的数制
2019-03-16
web访问ejb测试 详解
2019-03-16
window系统下安装使用curl命令工具
2019-03-16
假如计算机是中国人发明的,那代码应该这么写
2019-03-16
神器 Codelf !
2019-03-16
趣图:会算法和不会算法的区别
2019-03-16
区块链会2020再次爆发,先学点DAPP压压惊,跟我一起学《区块链DApp入门实战》
2019-03-16
问题解决28:微信网页授权出现redicet_uri 参数错误
2019-03-16
LeakCanary 中文使用说明
2019-03-16
反转链表,(5)
2019-03-16
Camera (api1)的打开过程
2019-03-16
wxwidgets绘图
2019-03-16
wxwidgets事件处理
2019-03-16
用OpenCv转换原始图像数据到wximage
2019-03-16
codeblocks下wxWidgets编译与配置
2019-03-16
OpenCv+wxwidgets尝试
2019-03-16
wxwidgets自定义事件+调试
2019-03-16
wxwidgets编写多线程程序--wxThread
2019-03-16