Skip to content

Default "module/controller/action" style Routes for lumen

Notifications You must be signed in to change notification settings

Ryllaz/lumen-default-routes

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Default Routes For Lumen

build status

With this library, you can easily add "module/controller/action" style routes for Lumen.

Install

Suggest install it via composer:

composer require clarence/lumen-default-routes

Then, register the DefaultRouteProvider. For lumen, please register \Clarence\LumenDefaultRoutes\DefaultRouteProvider::class in bootstrap/app.php.

// bootstrap/app.php

$app = new Laravel\Lumen\Application(
    realpath(__DIR__.'/../')
);

//...

$app->group(['namespace' => 'App\Http\Controllers'], function ($app) {
    require __DIR__.'/../app/Http/routes/main_routes.php';
});

$app->register(Clarence\LumenDefaultRoutes\DefaultRouteProvider::class); // add: register default routes below registered all your own routes

Routes Maps

foo/bar will be mapped to \App\Http\Controllers\FooController@doGetBar by default.

Note:

  1. \App\Http\Controllers\ is the namespace prefix of the controller. It can be configurated as default-routes.controller-prefix.
  2. In FooController, Controller is the class name suffix. It can be configurated as default-routes.controller-suffix.
  3. doGetBar is the actual method to be executed. It is do + <HTTP_METHOD> + <action>. And it should be a public method. Otherwise a 404 or 405 HTTP error will be thrown.
  4. If \App\Http\Controllers\FooController@doGetBar cannot be found, \App\Http\Controllers\Foo\BarController@doGetIndex will be tried.

About

Default "module/controller/action" style Routes for lumen

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%