4

我正在使用feathersjs 。

我已阅读文档

我如何执行这个方法来检查服务挂钩feathers-hook,或者告诉我另一种检查方法。

const { disallow } = require('feathers-hooks-common');

function include() {
  return function (hook) {
    const productPrice = hook.app.service('product-prices').Model;
    const currencies = hook.app.service('currencies').Model;
    const edizm = hook.app.service('edizm').Model;

    const pricesShema = { model: productPrice,
      include: [
        {
          model: currencies,
          attributes: ['title', 'socr']
        },
      ]
    };

    const edizmShema = { model: edizm,
      attributes: ['title', 'detail']
    };

    let association={include: [edizmShema, pricesShema]};
    hook.params.sequelize = Object.assign(association,{ raw: false });

    return Promise.resolve(hook);
  }
}

module.exports = {
  ......
};
4

1 回答 1

1

正如这里所解释的:羽毛钩子与 POJO 一起工作,而不是与 DB ORM 一起工作,并且您raw: false返回一个 ORM。

如果你真的不能使用raw: true,那么将 ORM 转换为 POJO:

const dehydrate = require('feathers-sequelize/hooks/dehydrate');
hooks.after.find = [dehydrate(), discard('password')]

您可以转换回 ORM(如果您真的需要)。

于 2017-12-01T10:50:57.873 回答