LaravelPackages.net
Acme Inc.
Toggle sidebar
mojtabaahn/laravel-controller-routes

Adds Controller Centered Routes to Laravel

6
2
1.0.0-alpha.1
About mojtabaahn/laravel-controller-routes

mojtabaahn/laravel-controller-routes is a Laravel package for adds controller centered routes to laravel. It currently has 2 GitHub stars and 6 downloads on Packagist (latest version 1.0.0-alpha.1). Install it with composer require mojtabaahn/laravel-controller-routes. Discover more Laravel packages by mojtabaahn or browse all Laravel packages to compare alternatives.

Last updated

Laravel Controller Aware Routes

Latest Version on Packagist Total Downloads Repo Size Repo Size

Requirement

This package requires PHP 7.4 or higher.

Installation

You can install the package via composer:

composer require mojtabaahn/laravel-controller-routes

Usage

<?php
// routes/web.php

use MojtabaaHN\LaravelControllerRoutes\Routes;
use Illuminate\Support\Facades\Route;


Routes::make('UserController')->methods(function (ControllerAwareRouter $router) {
    $router->get('user/{user}', 'profile')->name('user.profile');
    $router->get('user/{user}/post/{post}','post')->name('user.post');
});

// Or

Routes::make()
    ->controller('UserController')
    ->methods(function (ControllerAwareRouter $router) {
        $router->get('user/{user}', 'profile')->name('user.profile');
        $router->get('user/{user}/post/{post}','post')->name('user.post');
    });

// Same as

Route::get('user/{user}', 'UserController@profile')->name('user.profile');
Route::get('user/{user}/post/{post}','UserController@posts')->name('user.posts');

// Using RouteRegistrar methods

Routes::make()
    ->prefix('user/{user}')
    ->name('user.')
    ->middleware('web')
    ->controller('UserController')
    ->methods(function (ControllerAwareRouter $router) {
        $router->get('/', 'profile')->name('profile');
        $router->get('posts','posts')->name('posts');
    });

// same as 

Route::prefix('user/{user}')
    ->name('user.')
    ->middleware('web')
    ->group(function(){
        Route::get('/', 'UserController@profile')->name('profile');
        Route::get('posts','UserController@posts')->name('posts');
    });

Testing

composer test

License

The MIT License (MIT). Please see License File for more information.

Star History Chart