andrey-helldar/extended-routes

此包已被 废弃 并不再维护。作者建议使用 dragon-code/extended-routes 包。

此助手扩展了标准的资源路由方法,使其能与 SoftDeletes 和其他扩展一起工作

4.0.1 2024-03-15 00:21 UTC

README

Extended Routes

Stable Version Unstable Version Total Downloads Github Workflow Status License

此助手扩展了标准的资源路由方法,使其能与 SoftDeletes 和其他扩展一起工作。

安装

兼容性

Laravel PHP 扩展路由版本
7, 8, 9, 10 7.3, 7.4, 8.0, 8.1, 8.2 ^3.0
10, 11 8.1, 8.2, 8.3 ^4.0

要获取 Extended Routes 的最新版本,只需使用 Composer 需求项目

$ composer require dragon-code/extended-routes

当然,您也可以手动更新 require 块并运行 composer update,如果这样做的话

{
    "require": {
        "dragon-code/extended-routes": "^4.0"
    }
}

andrey-helldar/extended-routes 升级

  1. 在您的 composer.json 文件中,将 "andrey-helldar/extended-routes": "^2.0" 替换为 "dragon-code/extended-routes": "^3.0"
  2. 在您的应用中将 Helldar\ExtendedRoutes 命名空间前缀替换为 DragonCode\ExtendedRoutes
  3. 运行 command composer update。
  4. 成功!

使用

通过特质

use DragonCode\ExtendedRoutes\Routing\ModelBindingResolver;
use DragonCode\ExtendedRoutes\Traits\ExtendedSoftDeletes;

class Page extends Model
{
    use ExtendedSoftDeletes;
}

扩展抽象模型

use DragonCode\ExtendedRoutes\Models\ExtendedSoftDeletes;
//use Illuminate\Database\Eloquent\SoftDeletes;

class Foo extends ExtendedSoftDeletes
{
    //use SoftDeletes; << need to remove conflicting trait.
}

路由

app('router')->apiRestorableResource('foos', 'FoosController');

// or

Route::apiRestorableResource('foos', 'FoosController');

也可以进行引用

use App\Http\Controllers\FoosController;

app('router')->apiRestorableResource('foos', FoosController::class);

// or

Route::apiRestorableResource('foos', FoosController::class);
方法 URI 名称 行为 中间件
GET/HEAD api/foos foos.index App\Http\Controllers\FoosController@index api
POST api/foos foos.store App\Http\Controllers\FoosController@store api
GET/HEAD api/foos/trashed foos.trashed App\Http\Controllers\FoosController@trashed api
GET/HEAD api/foos/{foo} foos.show App\Http\Controllers\FoosController@show api
PUT/PATCH api/foos/{foo} foos.update App\Http\Controllers\FoosController@update api
DELETE api/foos/{foo} foos.destroy App\Http\Controllers\FoosController@destroy api
POST api/foos/{foo}/restore foos.restore App\Http\Controllers\FoosController@restore api

许可

此包根据 MIT 许可证 许可。

此包由 Maksim (Ellrion) Platonov 参与,根据 MIT 许可证 编写。