Sails Js - 按关联值与蓝图排序

时间:2016-06-30 03:33:58

标签: javascript node.js rest sails.js

是否可以使用sails js blueprint?

对关联属性中的模型结果进行排序

e.g:

// Profile:
module.exports = {
    attributes: {
        firstName: { type: 'string', required: true },
        lastName: { type: 'string', required: true },
        user: { model: 'user', required: true }
    }
};
// User:
module.exports = {
    attributes: {
        email: { type: 'string', required: true }
    }
};

然后执行以下操作: /api/profiles?populate=user&sort=user.email+DESC

1 个答案:

答案 0 :(得分:2)

不,这不适用于Sails蓝图。

您应该在ProfileController中创建一个新操作来执行此操作:

findByEmailDesc: function (req, res) {
  Profile
    .find()
    .populate('user')
    .exec(function (err, profiles) {
      if (err) return res.serverError(err);

      return res.ok(_.sortBy(profiles, 'user.email').reverse());
  });
}