laravel-permission 和 bouncer 使用小结

上手使用感觉

laravel-permission

  1. 数据表设计,更加复杂一些
  2. 数据表进行设计的时候,并不是每张表都有id作为PRI,导致部分CRUD工具无法识别主键
  3. guard 会默认从配置中获取web,这就要求Model类是要有guard_name这个属性的。或者可以每次调用givePermissionTo之前,单独指定属性。

bouncer

  1. 数据表结构设计更简单,数据结构设计更加灵活,不仅仅是给用户设置权限,可以给任何Model设置(当然laravel-permission也可以)
  2. permissions表,用来存储了权限和ablities表的映射关系,但是这张表里面的entity_type既可以是roles、又可以是Model类,entity_id代表在entity_type指向的表中的主键
  3. ablities才是权限表

总结

从刚刚进行适配的感觉来看,bouncer 更适合自由度更高的programer

推荐

这是一款可以根据MySQL的表结构生成CRUD后台的工具,在配合使用laravel-permission的时候,遇到了很多问题,就如刚刚提到的主键问题。配合bouncer运行完美,可以修改后作为权限系统的UI。

https://github.com/sunshinev/laravel-gii

你可能感兴趣的:(laravel,gii,vue.js)