vildanbina/route-priority

为 Laravel 7 路由添加优先级的包

dev-master 2021-08-30 12:49 UTC

This package is auto-updated.

Last update: 2024-08-29 05:43:16 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License

安装

您可以通过 composer 安装此包

composer require vildanbina/route-priority

现在打开 app/config/app.php 并将服务提供者添加到您的 providers 数组中。

vildanbina\RoutePriority\RoutePriorityServiceProvider::class,

将特质添加到 App\Http\Kernel

use \vildanbina\RoutePriority\RouterTrait;

用法

更改路由优先级

Route::get('test', ['uses' => 'Controller@showAction'])->setPriority(100);

默认优先级

默认优先级为 50。更高优先级 - 从 50 开始的值,更低优先级 - 49 以下的值。

用法示例

Route::get('/test/{slug}', …);
Route::get('/test/hello', …);

在这个示例中,第二个路由将不会工作。将第一个路由的优先级设置为 0 将修复错误

Route::get('/test/{slug}', …)->setPriority(0);
Route::get('/test/hello', …);

第二个路由现在具有更高的优先级。

组优先级

您可以将优先级应用于组

Route::group(['prefix' => 'test-group', 'priority' => 10], function () {
	Route::get('/test/hello', function () {
	    return 'First group';
	});
});

Route::group(['prefix' => 'test-group', 'priority' => 20], function () {
	Route::get('/test/hello', function () {
	    return 'Second group';
	});
});

第二个组的优先级高于第一个组。组中的所有路由都将具有与组相同的优先级。