tripteki / laravelphp-setting-menu
Trip Teknologi 的 Laravel.php 设置菜单
1.1.2
2023-11-26 02:22 UTC
Requires
- php: ^8.0.2
- awobaz/compoships: ^2.0
- tripteki/laravelphp-adminer: ^1.0.0
- tripteki/laravelphp-helpers: ^1.0.0
- tripteki/laravelphp-import-export: ^1.0.0
- tripteki/laravelphp-repository: ^1.0.0
- tripteki/laravelphp-request-response-query: ^1.0.0
- tripteki/laravelphp-setting: ^1.0.0
Suggests
- laravel/framework: Required when using laravel framework (^9.0).
- laravel/lumen-framework: Required when using lumen framework (^9.0).
README
此包为 Lumen 和 Laravel 提供了基于仓库模式的设置菜单实现,同时提供无侵入性的 REST API 管理后台起航包,以保持代码库的整洁。
入门指南
安装
composer require tripteki/laravelphp-setting-menu
如何使用它
-
将
Tripteki\SettingMenu\Providers\SettingMenuServiceProvider
添加到服务提供者配置列表。 -
将
Tripteki\SettingMenu\Providers\SettingMenuServiceProvider::ignoreMigrations()
添加到register
提供者中,然后运行(可选)以将迁移文件发布到项目目录中:
php artisan vendor:publish --tag=tripteki-laravelphp-setting-menu-migrations
- 迁移。
php artisan migrate
- 运行(可选)以将测试文件发布到项目目录中:
php artisan vendor:publish --tag=tripteki-laravelphp-setting-menu-tests
- 示例
use Tripteki\SettingMenu\Contracts\Repository\Admin\ISettingMenuDetailRepository; use Tripteki\SettingMenu\Contracts\Repository\ISettingMenuRepository; $menuRepository = app(ISettingMenuDetailRepository::class); // $menuRepository->create("headernavbar", "home", [ "category" => null, "icon" => "md-home", "title" => "Home", "description" => "Home Page", ]); // // $menuRepository->delete("headernavbar", "home"); // // $menuRepository->update("headernavbar", "home", [ "icon" => "fa-home", ]); // // $menuRepository->get("headernavbar", "home"); // // $menuRepository->all("headernavbar"); // $repository = app(ISettingMenuRepository::class); // $repository->setUser(...); // // $repository->getUser(); // // $repository->move(null, "dashboard", "sidenavbar"); // Attach "dashboard" menu to "base" menu that is part of "sidenavbar"... // $repository->move(null, "home", "headernavbar"); // Attach "home" menu to "base" menu that is part of "headernavbar"... // $repository->move(null, "profile", "headernavbar"); // Attach "profile" menu to "base" menu that is part of "headernavbar"... // $repository->move(null, "about", "headernavbar"); // Attach "about" menu to "base" menu that is part of "headernavbar"... // $repository->move(null, "media", "sidenavbar"); // Attach "media" menu to "base" menu that is part of "sidenavbar"... // $repository->move("media", null, "sidenavbar"); // Detach "media" menu from "base" menu that is part of "sidenavbar"... // $repository->move("about", null, "headernavbar"); // Detach "about" menu from "base" menu that is part of "headernavbar"... // $repository->move("profile", null, "headernavbar"); // Detach "profile" menu from "base" menu that is part of "headernavbar"... // $repository->move("home", null, "headernavbar"); // Detach "home" menu from "base" menu that is part of "headernavbar"... // $repository->move("dashboard", null, "sidenavbar"); // Attach "dashboard" menu to "base" menu that is part of "sidenavbar"... // $repository->move("media", "dashboard", "sidenavbar"); // Move "media" menu from "base" menu to inside "dashboard" menu that is part of "sidenavbar"... // $repository->move("profile", "home", "headernavbar"); // Move "profile" menu from "base" menu to inside "home" menu that is part of "headernavbar"... // $repository->move("about", "home.profile", "headernavbar"); // Move "about" menu from "base" menu to inside "home"->"profile" menu that is part of "headernavbar"... // $repository->move("home.profile.about", "home", "headernavbar"); // Move "about" menu from inside "profile"->"about" menu to inside "home" menu that is part of "headernavbar"... // $repository->all("headernavbar"); // // $repository->all("sidenavbar"); //
- 将此添加到您的注释配置中,以在项目目录中生成 Swagger 文件(可选):
base_path("app/Http/Controllers/SettingMenu")
base_path("app/Http/Controllers/Admin/SettingMenu")
用法
php artisan adminer:install:setting:menu
作者
- Trip Teknologi (@tripteki)
- Hasby Maulana (@hsbmaulana)