mongodb本机id上的sails.js连接表
我在mongodb数据库中有两个集合,每个集合都有一个模型 应用程序模型mongodb本机id上的sails.js连接表,mongodb,sails.js,waterline,sails-mongo,Mongodb,Sails.js,Waterline,Sails Mongo,我在mongodb数据库中有两个集合,每个集合都有一个模型 应用程序模型 module.exports = { tableName: 'app', attributes: { _id : { primaryKey: true, unique: true, type: 'string', }, userId: { model: 'user
module.exports = {
tableName: 'app',
attributes: {
_id : {
primaryKey: true,
unique: true,
type: 'string',
},
userId: {
model: 'user'
},
title: {
type: 'string',
required: true,
unique: true,
},
createdDate : 'string'
},
};
和用户模型
module.exports = {
tableName: 'user',
attributes: {
id : {
primaryKey: true,
unique: true,
type: 'string',
collection: "app",
via : "userId"
},
password: {
type: 'string',
required: true
},
apps : {
collection: "app",
via : "userId"
}
},
};
当我使用数值加入这个集合时,效果很好,但当我尝试使用mongodb本机id对象时,得到的结果是空的
如何调用联接查询
User.find().populate('apps').exec(function(err, result) {});
您需要去掉模型中的_id和id属性定义。Waterline将为您处理主键字段,并自动将其规范化为id,因此,除非您需要更改字段类型,否则可以安全地将其忽略。另外,我不确定您在id定义中添加collection和via的目的是什么,但主键永远不会是关联 否则,您的模型看起来是正确的。如果你去掉了这两个属性,事情应该会很顺利