对于模型定义product.js
,我的api端点如下所示API /产品/ 9720 id_shop = 1&安培; id_lang = 1
我需要访问product.js中的id_shop,才能在从products表中获取记录之前应用where子句。
Product.observe('access', function (ctx, next) {
next();
});
我如何访问id_shop和id_lang?
答案 0 :(得分:4)
您可以使用远程方法创建自定义端点:
http://rpubs.com/jrowen/intro_rhandsontable
如果您真的想要改变Model.find()的默认行为,可以使用loopback.getCurrentContext(),然后为每个GET请求注入过滤器:
Product.on('dataSourceAttached', function(obj){
var find = Product.find;
Product.find = function(filter, cb) {
var id_shop = loopback.getCurrentContext().active.http.req.query.id_shop;
filter = {where:{id_shop: id_shop}};
return find.apply(this, arguments);
};
});
这将覆盖传入的任何过滤器,因此您需要使用其他逻辑来处理它。