Sails.js 如何使用join连接sails中的两个表
我知道,在sails中,我可以使用populate连接两个模型,如本链接中描述的 例如,我有两个模型:Sails.js 如何使用join连接sails中的两个表,sails.js,Sails.js,我知道,在sails中,我可以使用populate连接两个模型,如本链接中描述的 例如,我有两个模型: // myApp/api/models/Pet.js module.exports = { attributes: { name: { type: 'string' }, color: { type: 'string' } } } 及 然后 将返回如下结果 [{ name: 'Mike', age: 21, po
// myApp/api/models/Pet.js
module.exports = {
attributes: {
name: {
type: 'string'
},
color: {
type: 'string'
}
}
}
及
然后
将返回如下结果
[{
name: 'Mike',
age: 21,
pony: {
name: 'Pinkie Pie',
color: 'pink',
id: 5,
createdAt: Tue Feb 11 2014 15:45:33 GMT-0600 (CST),
updatedAt: Tue Feb 11 2014 15:45:33 GMT-0600 (CST)
},
createdAt: Tue Feb 11 2014 15:48:53 GMT-0600 (CST),
updatedAt: Tue Feb 11 2014 15:48:53 GMT-0600 (CST),
id: 1
}]
在这里,小马是一个物体,我不喜欢它。我想返回如下结果:
[{
name: 'Mike',
age: 21,
name: 'Pinkie Pie',
color: 'pink',
id: 5,
createdAt: Tue Feb 11 2014 15:45:33 GMT - 0600 (CST),
updatedAt: Tue Feb 11 2014 15:45:33 GMT - 0600 (CST)
createdAt: Tue Feb 11 2014 15:48:53 GMT - 0600 (CST),
updatedAt: Tue Feb 11 2014 15:48:53 GMT - 0600 (CST),
id: 1
}]
(它们都是财产)。所以我想我需要加入这个案子。我怎样才能加入?这个问题已经讨论过了。答案演示了如何在Sails中为NoSQL DB使用.populate(),在SQL DB中使用.query()
如果您使用的是类似MySQL的SQL DB,并且这是一个经常运行的查询,那么另一个选项是在DB级别创建视图。您可以在中找到有关创建视图的详细信息。此问题已经讨论过。答案演示了如何在Sails中为NoSQL DB使用.populate(),在SQL DB中使用.query()
如果您使用的是类似MySQL的SQL DB,并且这是一个经常运行的查询,那么另一个选项是在DB级别创建视图。您可以在中找到有关创建视图的详细信息。您的预期结果对象具有重复的键。这应该是JSON对象还是JSON?当您的预期结果对象具有重复的键时,我将重命名它。这应该是一个JS对象还是JSON?@Sangarsh我会在Join时重命名它我想我会创建视图是的,这是一个很好的选择,然后你可以在sails中为DB视图创建一个模型,不再嵌套JSON。我想我会创建视图是的,这是一个很好的选择,然后,您可以在sails中为DB视图创建一个模型,不再需要嵌套JSON。
[{
name: 'Mike',
age: 21,
pony: {
name: 'Pinkie Pie',
color: 'pink',
id: 5,
createdAt: Tue Feb 11 2014 15:45:33 GMT-0600 (CST),
updatedAt: Tue Feb 11 2014 15:45:33 GMT-0600 (CST)
},
createdAt: Tue Feb 11 2014 15:48:53 GMT-0600 (CST),
updatedAt: Tue Feb 11 2014 15:48:53 GMT-0600 (CST),
id: 1
}]
[{
name: 'Mike',
age: 21,
name: 'Pinkie Pie',
color: 'pink',
id: 5,
createdAt: Tue Feb 11 2014 15:45:33 GMT - 0600 (CST),
updatedAt: Tue Feb 11 2014 15:45:33 GMT - 0600 (CST)
createdAt: Tue Feb 11 2014 15:48:53 GMT - 0600 (CST),
updatedAt: Tue Feb 11 2014 15:48:53 GMT - 0600 (CST),
id: 1
}]