Sails js,我们如何使用填充编写内部连接
Sails js, how do we write inner join using populate
Sails 的填充用作左连接。我想做内连接,
任何人都可以帮助我如何在不编写原始查询的情况下使用填充来编写内部联接。我正在使用 MYSQL 适配器。
如果你有两个模型用户,联系人
关系一对多
你试着写这样的东西:-
第一批模特会喜欢这个:-
user.js
module.exports = {
schema: true,
tableName: 'userdata',
attributes: {
anyField: {
type: 'integer',
required: false,
size: 56,
},
contacts: {
collection: 'Contact',
via: 'user'
}
};
contact.js :-
module.exports = {
attributes: {
name: {
type: 'string'
},
mobile_number: {
type: 'string'
},
user: {
model: 'User'
}
};
你可以得到这样的填充结果:-
User.find(user.id).populate('contacts').exec(function (err, user) {
// this contains user object and populated by contacts
console.log(user[0].contacts);
});
你得到的结果如下:-
{
name:'tets',
contacts:[{
'name':'test',
'mobile_number':'00000'
},
{
'name':'test',
'mobile_number':'00000'
},
{
'name':'test',
'mobile_number':'00000'
}]
}
Sails 的填充用作左连接。我想做内连接,
任何人都可以帮助我如何在不编写原始查询的情况下使用填充来编写内部联接。我正在使用 MYSQL 适配器。
如果你有两个模型用户,联系人 关系一对多 你试着写这样的东西:-
第一批模特会喜欢这个:-
user.js
module.exports = {
schema: true,
tableName: 'userdata',
attributes: {
anyField: {
type: 'integer',
required: false,
size: 56,
},
contacts: {
collection: 'Contact',
via: 'user'
}
};
contact.js :-
module.exports = {
attributes: {
name: {
type: 'string'
},
mobile_number: {
type: 'string'
},
user: {
model: 'User'
}
};
你可以得到这样的填充结果:-
User.find(user.id).populate('contacts').exec(function (err, user) {
// this contains user object and populated by contacts
console.log(user[0].contacts);
});
你得到的结果如下:-
{
name:'tets',
contacts:[{
'name':'test',
'mobile_number':'00000'
},
{
'name':'test',
'mobile_number':'00000'
},
{
'name':'test',
'mobile_number':'00000'
}]
}