Laravel-Backpack MenuCRUD 开源项目教程

Laravel-Backpack MenuCRUD 开源项目教程

MenuCRUD An admin panel for menu items, using Backpack\CRUD on Laravel 6 or 7. MenuCRUD 项目地址: https://gitcode.com/gh_mirrors/me/MenuCRUD

1. 项目介绍

Laravel-Backpack MenuCRUD 是一个基于 Laravel 框架的开源项目,它使用 Backpack\CRUD 提供了一个管理后台菜单项的 admin panel。通过此项目,开发者可以轻松添加、编辑、排序、嵌套和重命名菜单项,并将它们链接到 Backpack\PageManager 页面、外部链接或自定义内部链接。该项目通常用于前端菜单,而不是后端。

2. 项目快速启动

安装

在开始之前,确保你的项目中已经安装了 Backpack\PageManager。以下是快速启动项目的步骤:

  1. 下载代码:从 GitHub 下载最新版本的 MenuCRUD。

  2. 合并文件:将下载的 'app' 和 'database' 文件夹复制到你的项目相应文件夹中(合并它们)。不应该出现文件覆盖警告。

  3. 复制视图文件:将 'resources/views/fields' 文件夹中的 'page_or_link.blade.php' 文件复制到项目 'resources/views/vendor/backpack/crud/fields' 文件夹中。

  4. 替换命名空间:在复制过来的文件中,将所有 'Backpack\MenuCRUD\app' 替换为你的应用命名空间(如果你没有更改过,通常是 'App')。

  5. 运行迁移:执行以下命令创建数据库表:

    php artisan migrate
    
  6. 添加路由:在你的路由文件中添加以下代码:

    Route::group(['prefix' => config('backpack.base.route_prefix', 'admin'), 'middleware' => ['web', 'auth'], 'namespace' => 'Admin'], function () {
        // Backpack\MenuCRUD
        Route::crud('menu-item', 'MenuItemCrudController');
    });
    
  7. (可选)添加菜单项:根据你的 Backpack 版本,执行以下命令来添加菜单项:

    # 对于 Backpack v6
    php artisan backpack:add-menu-content "<x-backpack::menu-item title='菜单' icon='la la-list' :link=\"backpack_url('menu-item')\" />"
    
    # 对于 Backpack v5 或 v4
    php artisan backpack:add-sidebar-content "<li class='nav-item'><a class='nav-link' href='{{ backpack_url('menu-item') }}'><i class='nav-icon la la-list'></i> <span>菜单</span></a></li>"
    

3. 应用案例和最佳实践

使用示例

在你的前端模板中,你可以使用以下代码来显示菜单项:

@foreach (\App\MenuItem::getTree() as $item)
    <a class="no-underline hover:underline p-3" href="{{$item->url()}}">
        {{ $item->name }}
    </a>
@endforeach

扩展和自定义

如果你需要对项目进行修改,建议以下最佳实践:

  • 创建一个 routes/backpack/menucrud.php 文件,这样你的路由将替代包中的路由。
  • 创建继承自包中控制器和模型的控制器和模型,并在你的新路由文件中使用这些。
  • 根据需要修改新的控制器和模型。

4. 典型生态项目

Laravel-Backpack MenuCRUD 作为一个生态项目,通常与以下项目搭配使用:

  • Backpack\CRUD:Backpack 的核心,提供了一个强大的 CRUD 生成器。
  • Backpack\PageManager:用于管理页面和内容的扩展。
  • 其他 Backpack 扩展:如 Backpack\Settings、Backpack\TranslationManager 等,以增强管理面板的功能。

通过这些扩展和最佳实践,你可以构建一个强大且易于管理的 Laravel 后台系统。

MenuCRUD An admin panel for menu items, using Backpack\CRUD on Laravel 6 or 7. MenuCRUD 项目地址: https://gitcode.com/gh_mirrors/me/MenuCRUD

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孙娉果

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值