Javascript 如何在Sequelize中生成自引用外键?
下面是我对Javascript 如何在Sequelize中生成自引用外键?,javascript,sequelize.js,Javascript,Sequelize.js,下面是我对租赁表的模型定义。正如您所看到的,我遇到了一个错误,因为我无法引用尚未定义的模型上的键 第56行可以很好地设置键的关系,因为我已经创建了模型但是在创建模型之前,如何访问第40行的模型? 下面是getForeignKey()的作用: 好的,删除我的全部答案,因为您已经将模型与自身关联。这就是result.belongsTo(result,{foreignKey:'rendered\u from\u lease\u id})正在做的事情。这不能满足您的需要吗?好的,删除我的全部答案,因为
租赁
表的模型定义。正如您所看到的,我遇到了一个错误,因为我无法引用尚未定义的模型上的键
第56行可以很好地设置键的关系,因为我已经创建了模型但是在创建模型之前,如何访问第40行的模型?
下面是getForeignKey()的作用:
好的,删除我的全部答案,因为您已经将模型与自身关联。这就是
result.belongsTo(result,{foreignKey:'rendered\u from\u lease\u id})
正在做的事情。这不能满足您的需要吗?好的,删除我的全部答案,因为您已经将模型与自身关联起来了。这就是result.belongsTo(result,{foreignKey:'rendered\u from\u lease\u id})
正在做的事情。这不能满足您的需要吗?不幸的是,我需要两条线。前一段时间我问过如何定义外键,并检查了我的答案:我从你问的关于定义“local”字段不同于“convention”的问题中看到了。我认为这可以通过添加设置为:“whateverYouWantThePropToBeCalled”
。我从未遇到过延迟属性,所以不能对此发表评论。不幸的是,我需要两行。前一段时间我问过如何定义外键,并检查了我的答案:我从你问的关于定义“local”字段不同于“convention”的问题中看到了。我认为这可以通过添加设置为:“whateverYouWantThePropToBeCalled”
。不过,我从未遇到过可延期财产,因此无法对此发表评论。
getForeignKey(name: string, foreignModel: any): any {
return {
type: Sequelize.UUID,
references: {
'model': foreignModel,
'key': name,
'deferrable': Sequelize.Deferrable.INITIALLY_DEFERRED,
'allowNull': true
}
};
}