theanadimukt/routes-dir-iterator

迭代嵌套目录以隔离路由

1.1 2022-05-15 21:57 UTC

README

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

此包包含一个 RoutesDirIterator 门面类,您可以使用它在一个地方注册从嵌套目录中隔离的路由。

安装

您可以通过 composer 安装此包

composer require theanadimukt/routes-dir-iterator

用法

例如,为了编写干净的代码,管理员和访客的路由已分别写在嵌套目录结构中的单独文件中。

routes
├── admin
│   ├── posts.php
│   ├── routes.php
│   └── settings
│       ├── permissions.php
│       └── roles.php
├── guest
│   └── routes.php
└── web.php

posts.php - 添加相关路由到文件

use Illuminate\Support\Facades\Route;

Route::get('/posts', function () {
    return view('admin.posts.index');
});

web.php - 使用包的 RoutesDirIterator 门面类。

use TheAnadimukt\RoutesDirIterator\Facades\RoutesDirIterator;
use Illuminate\Support\Facades\Route;

Route::middleware('auth')
    ->prefix('admin')
    ->name('admin.')
    ->group(function () {
        RoutesDirIterator::read(__DIR__ . "/admin");
    });

Route::middleware('guest')
    ->group(function () {
        RoutesDirIterator::read(__DIR__ . "/guest");
    });

在底层,包将执行必要的操作来注册所有隔离的路由并使其可发布。

使用命令列出所有已发布路由

php artisan route:list

测试

composer test

变更日志

请参阅 CHANGELOG 以获取有关最近更改的更多信息。

贡献

请参阅 CONTRIBUTING 以获取详细信息。

安全漏洞

请查看 我们的安全策略 了解如何报告安全漏洞。

鸣谢

许可证

MIT 许可证(MIT)。请参阅 许可证文件 以获取更多信息。