在Sails中从模型中获取当前用户
我在Sails中使用我的模型的toJSON()
方法,以便在通过应用程序的API公开模型时控制其某些属性的可见性。
为了决定要显示哪些属性以及哪些要省略,我需要知道当前用户的权限。 那么,如何从模型中获取当前用户呢? 还是有更好的方法(模式)来解决这个问题?
这是我想要实现的一些示例代码:
toJSON: function () { var result = {}; result.firstName = this.firstName; result.lastName = this.lastName; // Exposing emails only to admin users. if (currentUser.isAdmin()) { result.email = this.email; } return result; }
你在模型调用中读取一个会话的问题。 目前帆和水线的build立方式不能这样做。
您可以在初始模型调用中使用select
属性来限制返回的列。 由于这将在您的控制器的上下文中,您将有权访问req对象。
这里有一些相关的问题/答案在这个话题上。
sails.js在模型中使用会话参数
是否可以直接在SailsJS中的Model中访问会话variables
https://github.com/balderdashy/waterline/issues/556
https://github.com/balderdashy/waterline/pull/787
通过Google小组讨论这个话题