如何在LoopBack 3中使用where过滤相关模型(有很多关系)>
客户与工作有很多关系
按顶级属性进行过滤,如下所示
Customer.find({ include: ["jobs"],where :{username:"mel"} }, function(err, data) { console.log(data); cb(null, true, data); });
但是我无法通过具有嵌套数据的第二级属性进行过滤。
我尝试了以下操作,但似乎没有用
Customer.find({ include: ["jobs"],where :{"jobs.JobTypes":"Plumbing"} }, function(err, data) { console.log(data); cb(null, true, data); });
我也尝试过。
Customer.find({ include: ["jobs"],where :{"jobs":{"JobTypes":"Plumbing"}} }, function(err, data) { console.log(data); cb(null, true, data); });
这是我要过滤的json
{[{"customer_id": 1,
"customer_name": "1",
"realm": "string",
"username": "mel",
"email": "[email protected]",
"emailVerified": false,
"id": "5d88ac24a823fa5504b2db1f",
"jobs": [ { "jobId": 1, "CustomerId": 1, "jobType": "Painting", "id": "5d88c4670f527a484c57b09d" },
{"jobId": 2, "CustomerId": 1, "jobType": "Plumbing", "id": "5d88c47f0f527a484c57b09e" },
{"jobId": 3, "CustomerId": 1, "jobType": "Dancing", "id": "5d88c4920f527a484c57b09f" } ]
客户具有与作业的许多关系,按顶级属性进行过滤,如下所示。Customer.find({include:[“ jobs”],其中:{username:“ mel”}}},function(err,data){console .log(data); ...
回答如下: