在Strongloop环回中覆盖Relation Remote方法

时间:2014-11-22 18:29:37

标签: node.js loopbackjs strongloop

我有一个User模型和一个Follower模型,它与Follower和followee的User具有HasManyThrough关系。 如何更改默认的__get__followers方法参数?

2 个答案:

答案 0 :(得分:5)

我发现我可以通过正常方式添加新的远程方法。

loopback.remoteMethod(
            UserModel.prototype.getFollows,
            {
                description: 'Get the users who are followed by the user',
                accepts: [
                    {arg: 'page', type: 'Number', http: {source: 'query'}, required: true}
                ],
                returns: {arg: 'data', type: 'object'},
                http: {verb: 'get', path: '/follows'},
                isStatic: false,
            }
    );

答案 1 :(得分:0)

另一种方式。树有很多叶子,我们想覆盖树的__get__leaves关系处理程序。

/**
 * Before Remote handler
 *
 * @param {Object} ctx - Context
 * @param {Function} next - Callback function
 */
Tree.beforeRemote('**', function (ctx, unused, next) {
  if (ctx.method.name === '__get__leaves') {
    return Tree.getLeaves(ctx)
  }

  next()
})

/**
 * Override Relation handler
 *
 * @param {Object} ctx - Context
 */
Tree.getLeaves = (ctx) => {
  ctx.res.sendStatus(200)
}