grummfy/laravel-route-controller 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

grummfy/laravel-route-controller

Composer 安装命令:

composer require grummfy/laravel-route-controller

包简介

Define Router::controller() without breaking everything

README 文档

README

This library like other existing, give a way to deal with Router::controller. The key features:

  • allow caching of route
  • doesn't require extra manipulation
  • allow inheritance of route group
  • namespace independent

Compatible with laravel 5.5. (probably compatible with older version too).

Install

Install the dependencies

composer require grummfy/laravel-route-controller

Publish the configuration

php artisan vendor:publish --tag=config --provider=Grummfy\LaravelRouteController\RouteControllerProvider

Usage

Once the package is install and autodiscover (or you have added the provider manually), the package is ready to use.

In your route file, just do this:

Route::controller('/foo', \App\Http\Controllers\FooController::class);

It will take all the public method from the class (including traits) and convert it to route.

There is a third argument that you can use to add extra option, like a middleware or anything else.

Route::controller('/foo', \App\Http\Controllers\FooController::class, ['middleware' => 'can:baz']);

You got also an extra option, to don't allow heritance of methods from parent:

Route::controller('/foo', \App\Http\Controllers\FooController::class, ['middleware' => 'can:baz', 'heritage' => false]);

Example

Imagine that we have the class FooController (see example), in this case we will have a series of method that will be converted to routes:

  • index() -> /foo, foo.index
  • getStatus(string $status) -> /foo/status/{status}, foo.status.post
  • postStatus(string $status) -> /foo/status/{status}, foo.status.get
  • foo() -> /foo/foo, foo.foo
  • my() -> /foo/my, foo.my

TODO

  • unit test
  • QA tools
    • travis
    • styleci
    • scrutinizer
    • ...

Alternative

统计信息

  • 总下载量: 3.47k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 2
  • 点击次数: 3
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 2
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2018-02-06

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固