用户登录

我们还需要一个数据表来保存给用户分配的用户角色 ... 在命令行下面执行一下 adonis make:migration ,名字是 user_role ..

在项目里找到创建的这个 migration .. 它里面要创建的数据表的名字是 user_role ... 回滚它的时候,要删除的是 user_role 这个数据表 ..

表的结构跟之前创建的 role_permission 有点像 .. 打开这个 migration ... 复制一下 up 方法里的东西 ... 再把它们粘贴到 user_role 的 up 方法里面 ..

表里面需要一个 role_id .. 它是一个外键 . 关联的就是 roles 里的 id 字段 ..

另外还需要一个 user_id 字段 ... 也把它设置成一个外键 .. 关联的是 users 表里的 id 字段 ..

回到命令行 .. 运行一下 migration ... adonis migration:run ...

成功以后,回到数据库客户端 ... 检查一下应用的数据库 ... 你会发现,这里又多了一个叫 user_role 的数据表 .. 它里面存储的数据就是给用户分配的用户角色 ..

然后再打开 User 模型 ... 在这个模型里面我们可以再描述一下用户模型跟角色模型的关系 .. 添加一个方法 ... 名字叫 roles ...

方法 return 的是 this.belongsToMany .. 模型是 App/Models/Role ... 接着用一个 pivotTable 设置一下中间表的名字 .. 我们这里就是 user_role ...

然后再添加一个 withTimeStamps .. 因为表里有些日期字段要保存数据的创建还有更新的时间 ..

创建用户角色中间表与关系《 Node.js 应用:权限控制 #2 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点