Laravel Backpack Menu CRUD 的改造

文章目录

    MenuCRUD 非常不人性的地方是,新增一个节点是没有自动计算 left, right 属性,必须手动点击“重新排序”按钮,提交之后才能生成。

    对于普通的用户,我都没有脸去解释为何要多点这两次按钮。所以,我决定改造 MenuCRUD。

    很快找到了一个 laravel 的实现:

    https://github.com/lazychaser/laravel-nestedset

    我才知道这货的学名是 nested set model

    改起来异常简单:

    +use Kalnoy\Nestedset\NodeTrait;
     
     class MenuItem extends Model
     {
         use CrudTrait;
    +    use NodeTrait;
     
    +       public function getLftName()
    +       {
    +               return 'lft';
    +       }
    +
    +       public function getRgtName()
    +       {
    +               return 'rgt';
    +       }
    +
    +       public function getParentIdName()
    +       {
    +               return 'parent_id';
    +       }
    +
    

    关于作者 🌱

    我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊,或者关注我的个人公众号“大象工具”, 查看更多联系方式