0
strongRolopの/ User/loginレスポンスに対する任意の方法は、UserRolesフィールドによって拡張できますか?Strongloop - 返されたユーザーモデルへのフィールドの追加
デフォルトでは、strongloopは "firstName、lastName、email、id、userName"というユーザーオブジェクトを返しますが、userRolesも必要です。
strongRolopの/ User/loginレスポンスに対する任意の方法は、UserRolesフィールドによって拡張できますか?Strongloop - 返されたユーザーモデルへのフィールドの追加
デフォルトでは、strongloopは "firstName、lastName、email、id、userName"というユーザーオブジェクトを返しますが、userRolesも必要です。
組み込みのログイン方法としてremote hookを作成できます。
注
module.exports = User => {
User.afterRemote('login', async (ctx, usr, next) => {
let roleMaps = await User.app.models.RoleMapping.find({ where: { principalId: usr.userId } })
let roleIds = roleMaps.map(roleMap => { return roleMap.roleId })
let roles = await User.app.models.Role.find({ where: { id: { inq: roleIds } } })
usr.roles = roles
next()
})
}
user.js
に:私はES6と部分的にES7を(非同期/が待っています)を使用していますが、あなたは簡単にES5にそれを書き換えることができます。
また、ユーザーモデルと役割モデルの間に関係を作成し、include filterまたはscopesを使用することもできます。
Userをカスタマイズするのではなく、Userを拡張する独自のモデルをカスタマイズすることをお勧めします。 –