自动将会话信息附加到Sails.js中的模型

时间:2015-05-22 04:28:15

标签: javascript session sails.js passport.js

所以我需要在Sails.js中建立关联。使用集合属性可以很容易地使用这些模型:

Article.js

...
  attributes: {
        creator: {
            model: 'user'
        }
  ...

user.js的

...
    attributes: {
        articles: {
            collection: 'article',
            via: 'creator'
        },
    }
...

然后,当我创建一篇新文章时,我可以将我的数据库中的userId与“creator”属性/参数相关联,并通过ORM自动存储/显示。

但是,我想知道如何通过sails使用的会话自动建立关联。因此,我不必对用户ID进行查找,或者(gasp)存储用户ID,并通过电汇来回传递。

我对MVC的一点知识表明这个逻辑属于Controller,但是默认情况下我可以CRUD到我的文章里面没有任何内容ArticleController.js

1 个答案:

答案 0 :(得分:2)

如果您的用户已经有会话,他们应该传递带有请求的令牌。这就像将userID从令牌中拉出一样简单(假设它已经在令牌中)。

您可以将令牌作为请求对象的属性进行访问。在您的情况下,它可能就像在您的create方法中设置userId = req.token.id;一样简单,并分配给您想要的任何字段。