用户可以直接拥有一些权限,也可以通过角色拥有一些权限。我们先设置一下用户直接拥有的权限 .. 保存用户拥有的权限需要一个数据表 ..
先去创建一个 migration ... adonis make:migration ... 名字可以是 user_permission ..
在项目下面,找到刚才创建的 migration .. 再编辑一下它 .. 创建的表的名字是 user_permission .. 回滚的时候可以再删除掉这个 user_permission 数据表 ..
在这个表里再添加几个字段 .. table.integer ... 整数字段,名字是 user_id ,存储的是用户的 id 号 .. unsigned .. 表示不能是负数 .. 再添加一个索引 .. 用一下 index() 这个方法 ..
这个 user_id 是个外键 .. table.foreign .. 字段是 user_id .. references 关联提 users 表里的 id 字段的值 .. onDelete 设置成 CASCADE ..
再添加一个 permission_id 字段 .. 名字是 permission_id .. 这个字段存储的是权限数据记录的 id 号 ..
再设置一个外键 .. 字段是 permission_id .. 关联的是 permissions.id ..
回到命令行 ... 运行一下 migration ... adonis migration:run ..
打开数据库客户端 .. 检查一下应用的数据库 .. 现在应用的数据库里会多出一个 user_permission 数据表 .. 它里面存储的数据记录就是用户跟权限的关系,也就是用户直接拥有的权限 ..