backpack / menucrud
使用 Backpack\CRUD 在 Laravel 6 上为菜单项提供的后台面板。
Requires
- backpack/crud: ^6.0
- backpack/pagemanager: ^3.2
Requires (Dev)
- scrutinizer/ocular: ~1.1
- squizlabs/php_codesniffer: ~2.3 || ~3.0
This package is auto-updated.
Last update: 2024-09-04 14:03:44 UTC
README
在 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) - 下载
-
将 'app' 和 'database' 文件夹粘贴到您的项目中(合并它们)。不应出现任何文件覆盖警告。
-
将位于 'resources/views/fields' 文件夹中的
page_or_link.blade.php
文件复制到您项目中的 'resources/views/vendor/backpack/crud/fields' 文件夹。不应出现任何文件覆盖警告。 -
将粘贴的文件中所有对 'Backpack\MenuCRUD\app' 的提及替换为您的应用程序命名空间(如果未更改,则为 'App')
- app/Http/Controllers/Admin/MenuItemCrudController.php
- app/Models/MenuItem.php
- 运行迁移以拥有我们需要的数据库表
php artisan migrate
- 将 MenuCRUD 添加到您的路由文件
Route::group(['prefix' => config('backpack.base.route_prefix', 'admin'), 'middleware' => ['web', 'auth'], 'namespace' => 'Admin'], function () {
// Backpack\MenuCRUD
Route::crud('menu-item', 'MenuItemCrudController');
});
- [可选] 添加一个菜单项
# 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) - 包
- 在您的终端中运行
composer require backpack/menucrud
- 发布迁移
php artisan vendor:publish --provider="Backpack\MenuCRUD\MenuCRUDServiceProvider"
- 运行迁移以拥有我们需要的数据库表
php artisan migrate
- [可选] 添加一个菜单项
# 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
文件;该包将看到该文件,并加载 您 的路由文件,而不是包中的路由文件; - 创建控制器/模型,它们扩展了包中的那些,并在新的路由文件中使用它们;
- 修改您想要的任何新控制器/模型;
贡献
请参阅 CONTRIBUTING 和 CONDUCT 了解详细信息。
安全性
如果您发现任何与安全相关的问题,请通过电子邮件tabacitu@backpackforlaravel.com联系,而不是使用问题跟踪器。
请 订阅 Backpack Newsletter 以了解有关任何安全更新、重大更改或新功能的任何信息。我们每 1-2 个月发送一封电子邮件。
致谢
许可协议
Backpack可用于非商业用途免费,商业用途则需49欧元/项目。请参阅许可文件和backpackforlaravel.com获取更多信息。
聘请我们
我们投入了超过10,000小时来创建、打磨和维护Laravel的管理面板。我们开发了电子商务、在线学习、ERP系统、社交网络、支付网关等等。我们对管理面板的工作经验非常丰富,以至于我们创建了其领域中最受欢迎的软件之一——仅通过公开我们项目中重复的部分。
如果您正在寻找开发者/团队帮助您在Laravel上构建管理面板,无需再寻找。您很难找到比我们有更多经验和热情的人。这就是我们所做的事情。 联系我们 - 让我们看看是否可以合作。