Laravel-permission 和 bouncer 使用感觉总结
上手使用感觉
laravel-permission
- 数据表设计,更加复杂一些
- 数据表进行设计的时候,并不是每张表都有
id
作为PRI,导致部分CRUD工具无法识别主键 guard
会默认从配置中获取web
,这就要求Model类是要有guard_name
这个属性的。或者可以每次调用givePermissionTo
之前,单独指定属性。
bouncer
- 数据表结构设计更简单,数据结构设计更加灵活,不仅仅是给用户设置权限,可以给任何Model设置(当然laravel-permission也可以)
permissions
表,用来存储了权限和ablities表的映射关系,但是这张表里面的entity_type
既可以是roles、又可以是Model类,entity_id
代表在entity_type
指向的表中的主键ablities
才是权限表
总结
从刚刚进行适配的感觉来看,bouncer 更适合自由度更高的programer
推荐
这是一款可以根据MySQL的表结构生成CRUD后台的工具,在配合使用laravel-permission
的时候,遇到了很多问题,就如刚刚提到的主键问题。配合bouncer
运行完美,可以修改后作为权限系统的UI。
https://github.com/sunshinev/laravel-gii
本作品采用《CC 协议》,转载必须注明作者和本文链接