如何在风帆模型的afterCreate中获取会话参数

时间:2015-05-19 08:27:08

标签: node.js model sails.js after-create

我希望在模型afterCreate回调中获取当前登录用户。在控制器中,从请求标头req.user中找到当前登录的用户。但是在模型的生命周期回调中,会话头不会被传递。有没有办法从模型中找到当前用户?

我想要这样的事情:

afterCreate: function(record,next){
    var currentUser=this.req.user.id; //want to get the request header here with logged in user
    AnotherModel.create({something:record.something, createdBy:currentUser}).exec(function(err, anotherRecord){
        next()
    }); 
}

1 个答案:

答案 0 :(得分:3)

req对象在模型中不可用(原因我不会进入)。

但你的问题很常见。许多人所做的是创建一个策略,将该参数自动设置为传递给模型的参数。

以下是一系列相关的问题和答案

sails.js Use session param in model

Is it possible to access a session variable directly in a Model in SailsJS

https://github.com/balderdashy/waterline/issues/556

https://github.com/balderdashy/waterline/pull/787

Sails Google Group Discussion on the topic