如何在Loopback中创建Model实例时以编程方式填充字段?

时间:2016-11-04 13:01:25

标签: javascript loopbackjs

我有一个项目模型,比如Product,可以由用户添加。

当用户添加产品时,我希望Loopback在将实体保存到数据库之前添加具有用户ID的字段owner

我想我需要查看.beforeRemote('create', function (context, modelInstance, next) {...})钩子,但我发现modelInstance是空的,当我把东西放入其中时,它似乎没有通过。

如何在创建项目之前使Loopback添加一些字段?

1 个答案:

答案 0 :(得分:1)

您正在寻找before save挂钩吗?

module.exports = function (Product) {

     Product.observe('before save', function beforeSave(ctx, next) {
                if (ctx.instance) {
                   //on create
                   ctx.instance.owner = 'yourId';
                } else {
                   // on edit
                   ctx.data.owner = 'yourId';
                }
                next();
            });
};