我在sails.js中编写API,我遇到了查找对象的问题。
我有带属性的模型:
attributes: {
firstName:{
type:"string",
required:true,
minLength: 2
},
lastName:{
type:"string",
required:true,
minLength: 2
},
getFullName: function (){
var fl = this.firstName + " " + this.lastName;
return fl;
},
}
现在我想找到一个带有getFullName的对象startsWith" xyz qwe"
我该怎么做?
我试过了:
Patient.find({ getFullName: { 'startsWith': 'Tomas' }}).exec(console.log)
和
Patient.find({ getFullName(): { 'startsWith': 'Tomas' }}).exec(console.log)
两者都不起作用。
我可以在find()函数中访问getFullName等计算属性吗?
当然这个查询正在运行:
Patient.find({ firstName: { 'startsWith': 'Tomas' }}).exec(console.log)
答案 0 :(得分:0)
exec
或回调有2个参数(与任何其他回调一样),它是error
和result
。所以你的代码应该是。
Patient
.find({ getFullName: { 'startsWith': 'Tomas' }})
.exec(function(err, founds){
if(err) return console.error(err);
console.log(founds);
});
或者你可以使用Promise链来做你以前做过的事情。
Patient
.find({ getFullName: { 'startsWith': 'Tomas' }})
.then(console.log)
.catch(console.error);