如何在LoopBack上为“LIKE”查询键入REST API?
根据Loopback文档, 我已经尝试过这样:
ProductDealers?filter={"where":{"DealerCode":"T001","Active":"true","SKU":{"like":"1000.*"}}}
但没有任何反应, 请帮帮我?
答案 0 :(得分:0)
这就像是
Post.find({
where: {
title: {
like: 'someth.*',
options: 'i'
}
}
});
和api通话
?filter={"where":{"title":{"like":"someth.*","options":"i"}}}
请查看此PR了解详情
答案 1 :(得分:0)
我找到了答案,我不知道为什么当我使用括号时它无法正常工作" {}" 但是当我使用" []" ,它很有效,比如
Products?filter[where][Name][like]=%25" + valFilter + "%25&filter[where][Active]=1&filter[where][Deleted]=0"
干杯!
答案 2 :(得分:0)
有点晚了,但是我实际上是在寻找其他东西之后发现的。
对于大多数人来说,问题在于,有一种叫做 URL编码。
在此处了解更多信息: https://en.wikipedia.org/wiki/Percent-encoding
因此,如果您像上面的示例中那样对json过滤器进行字符串化,请确保将字符串化的对象放入Uri编码器中,这将确保您将获得期望的结果并控制值的编码
let t_filter = {
where: {
title: {
like: 'someth.*',
options: 'i'
}
}
};
let result = encodeURI(JSON.stringify(t_filter));
之后,将结果不仅发送到字符串化的对象,还发送到您的Api