【发布时间】:2016-09-01 12:48:47
【问题描述】:
我正在使用sails-hook-sequelize 将sequelize 加载为我的sails 应用程序中的ORM。但是,我的控制器和策略设置(即仅创建它们的方法)取决于模型。在运行控制器和策略挂钩之前,我需要运行sails-hook-sequelize 可安装挂钩(目前它正在运行它并且控制器/策略无法加载)。我怎样才能做到这一点? T
提前致谢。
编辑:这里有一些代码来说明我想要完成的事情:
用户控制器.js
let Endpoint = require('../classes/Endpoint');
let endpoint = new Endpoint(User);
Object.assign(endpoint, {
find
});
module.exports = endpoint;
function find(req, res, next) {
User.findAll(
{
where: req.query,
include: [
{
model: Privilege,
include: [
{
model: Account,
where: {
accountPkey: {
$in: AuthorizationService.accountsForPrivileges(req.tokenData.privileges, ['ADMINISTRATOR', 'OFFICE MANAGER'])
}
}
}
]
}
]
})
.then(users => res.ok(users))
.catch(err => res.serverError(err));
}
基本上,我有一个默认的 Endpoint 类,我实例化然后添加方法。您可以看到 Endpoint 类采用模型参数。但是,当这个钩子运行时,模型还不存在,因为它们是由第三方钩子定义的(使用 sequelize)。
【问题讨论】:
标签: javascript sails.js