backpack/menucrud

使用 Laravel 6 的 Backpack\CRUD 的菜单项管理后台。

安装: 203 204

依赖项: 1

建议者: 0

安全性: 0

星级: 196

关注者: 11

分支: 56

开放问题: 0

语言:Blade

v4.0.2 2024-09-04 14:00 UTC

README

Latest Version on Packagist Software License Build Status Coverage Status Quality Score Total Downloads

为 Laravel 5 或 Laravel 6 上的菜单项提供管理后台,使用 Backpack\CRUD。可以添加、编辑、重新排序、嵌套、重命名菜单项,并将它们链接到 Backpack\PageManager 页面、外部链接或自定义内部链接。

通常用于前端菜单,而不是后端。在 MenuCRUD 中添加菜单项不会在管理侧边栏中添加项,尽管您可以轻松自定义 Backpack\Base 的 sidebar.blade.php 来显示数据库中的所有菜单项。

安全更新和重大更改

订阅 Backpack Newsletter 以了解任何安全更新、重大更改或新功能。我们每 1-2 个月发送一封电子邮件。

安装

首先需要安装 Backpack\PageManager。如果您还没有这样做,请先完成此步骤。

由于 MenuCRUD 仅是 Backpack\CRUD 的示例,您可以选择以下两种方式之一进行安装。

(A) 下载并将文件放置在您的应用程序中(推荐)

(B) 作为包

安装为包的唯一优点是您可能从更新中受益。但现实是几乎没有(如果有的话)错误修复要做,因此您可能永远不需要更新它。

安装类型 (A) - 下载

  1. 下载最新版本.

  2. 将“app”和“database”文件夹粘贴到您的项目中(合并它们)。不应该出现任何文件覆盖警告。

  3. 将位于“resources/views/fields”文件夹中的 page_or_link.blade.php 文件复制到您项目中的“resources/views/vendor/backpack/crud/fields”文件夹。不应该出现任何文件覆盖警告。

  4. 将粘贴文件中所有关于 'Backpack\MenuCRUD\app' 的提及替换为您的应用程序命名空间(如果没有更改,则为 'App')

  • app/Http/Controllers/Admin/MenuItemCrudController.php
  • app/Models/MenuItem.php
  1. 运行迁移以创建所需的数据库表
php artisan migrate
  1. 将 MenuCRUD 添加到您的路由文件中
Route::group(['prefix' => config('backpack.base.route_prefix', 'admin'), 'middleware' => ['web', 'auth'], 'namespace' => 'Admin'], function () {
    // Backpack\MenuCRUD
    Route::crud('menu-item', 'MenuItemCrudController');
});
  1. [可选] 为它添加一个菜单项
# For Backpack v6
php artisan backpack:add-menu-content "<x-backpack::menu-item title='Menu' icon='la la-list' :link=\"backpack_url('menu-item')\" />"
# For Backpack v5 or 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>Menu</span></a></li>"

安装类型 (B) - 包

  1. 在终端中运行
composer require backpack/menucrud
  1. 发布迁移
php artisan vendor:publish --provider="Backpack\MenuCRUD\MenuCRUDServiceProvider"
  1. 运行迁移以创建所需的数据库表
php artisan migrate
  1. [可选] 为它添加一个菜单项
# For Backpack v6
php artisan backpack:add-menu-content "<x-backpack::menu-item title='Menu' icon='la la-list' :link=\"backpack_url('menu-item')\" />"
# For Backpack v5 or 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>Menu</span></a></li>"

在模板中使用

以下是一个简单的示例,您可以在前端使用

您可以使用 $item->children 访问项目子项

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

对于安装类型 (B),将命名空间更改为 Backpack\MenuCRUD\app\Models

变更日志

请参阅 CHANGELOG 了解最近更改的更多信息。

覆盖功能

如果您已使用安装类型 A 并需要修改项目中的此功能

  • 创建一个 routes/backpack/menucrud.php 文件;该包将看到它,并加载 您的 路由文件,而不是包中的路由文件;
  • 创建扩展包中那些的控制器/模型,并在您的新路由文件中使用它们;
  • 修改您想要修改的新控制器/模型中的任何内容;

贡献

请参阅CONTRIBUTINGCONDUCT获取详细信息。

安全性

如果您发现任何与安全相关的问题,请通过电子邮件tabacitu@backpackforlaravel.com联系,而不是使用问题跟踪器。

订阅 Backpack Newsletter 以了解任何安全更新、重大更改或新功能。我们每 1-2 个月发送一封电子邮件。

致谢

许可证

Backpack对非商业用途免费,商业用途为49欧元/项目。请参阅许可证文件backpackforlaravel.com获取更多信息。

雇佣我们

我们投入了超过10,000小时来创建、打磨和维护Laravel上的管理面板。我们开发了电子商务、电子学习、ERP、社交网络、支付网关等等。我们对管理面板的工作如此之多,以至于我们创建了这个细分市场中最受欢迎的软件之一——仅仅是从使我们在项目中重复的部分公开。

如果您正在寻找开发人员/团队来帮助您在Laravel上构建管理面板,那么您无需再寻找。您将很难找到比这更有经验和热情的人。这就是我们做的。联系我们 - 让我们看看是否能一起工作