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 更適合自由度更高的programerlaravel

推薦

這是一款能夠根據MySQL的表結構生成CRUD後臺的工具,在配合使用laravel-permission的時候,遇到了不少問題,就如剛剛提到的主鍵問題。配合bouncer運行完美,能夠修改後做爲權限系統的UI。git

https://github.com/sunshinev/laravel-gii
相關文章
相關標籤/搜索