Javascript 外键指向同一表中的主键-SailsJS-Waterline
我有一个名为Person的模型,它有一个id,也有一个parentID。parentID应该指向人物模型。My Person.js文件属性包括:Javascript 外键指向同一表中的主键-SailsJS-Waterline,javascript,mysql,database,sails.js,waterline,Javascript,Mysql,Database,Sails.js,Waterline,我有一个名为Person的模型,它有一个id,也有一个parentID。parentID应该指向人物模型。My Person.js文件属性包括: id: { type: 'integer', primaryKey: true, unique: true, size: 64, defaultsTo: function () { return IDService.createUniquePersonID().toString(); } }, parent: {
id: {
type: 'integer',
primaryKey: true,
unique: true,
size: 64,
defaultsTo: function () {
return IDService.createUniquePersonID().toString();
}
},
parent: {
model: 'person'
},
children: {
collection: 'person',
via: 'parent'
},
无论我做什么,我都无法让我的MySQL数据库显示我正在寻找的表:id(bigint)parent(bigint),我无法填充子表
PS:父级可能为空
您能帮助我吗?创建一个新的关系来存储id和parentID外部对吗?不过,如果你想存储空值,那就没什么用了。。。但这意味着你不必存储那些没有关系的东西?这是一个很好的观点@Gry-但我想我应该能够在相同的模型中创建它们。当数据库不处于引用完整性的级联状态时,外键有时可以为null。我还在努力。一定有办法…我觉得你的模型很适合实现你的目标。我已经在两个不同的模型中使用完全相似的设置完成了一对多。也许数据总体的某些方面不起作用了?可能是Waterline在创建新数据之前不会创建您正在查找的表?创建一个存储id和parentID外部对的新关系?不过,如果你想存储空值,那就没什么用了。。。但这意味着你不必存储那些没有关系的东西?这是一个很好的观点@Gry-但我想我应该能够在相同的模型中创建它们。当数据库不处于引用完整性的级联状态时,外键有时可以为null。我还在努力。一定有办法…我觉得你的模型很适合实现你的目标。我已经在两个不同的模型中使用完全相似的设置完成了一对多。也许数据总体的某些方面不起作用了?在创建新数据之前,Waterline可能不会创建您正在查找的表?