Define Route Groups with Controllers in Laravel

In this tutorial, we will learn how to define route groups with controllers in Laravel 8.80. This powerful feature allows you to organize your routes and controllers more efficiently.

The Laravel crew launched 8.80 with the power to outline a route group controller, render a string with the Blade compiler, PHPRedis serialization and compression config assist, and the most recent modifications within the v8.x department.

Luke Downing contributed the ability to define a controller for a route group, meaning you don't have to repeat which controller a route uses if the group uses the same controller:

use App\Http\Controllers\OrderController;

Route::controller(OrderController::class)->group(function () {
    Route::get('/orders/{id}', 'show');
    Route::post('/orders', 'store');

A great thing has been added in Laravel 8.80, which is the use of Route::controller() with Groups to shorten Route, so I want to share it with you so that you may use it in your next projects.

Render a String With Blade

Jason Beggs contributed a Blade::render() a technique that makes use of the Blade compiler to transform a string of Blade templating right into a rendered string:

// Returns 'Hello, CodeGeek'
Blade::render('Hello, {{ $name }}', ['name' => 'CodeGeek']);
// Returns 'Foo '
Blade::render('@if($foo) Foo @else Bar @endif', ['foo' => true]);
// It even supports components :)
// Returns 'Hello, CodeGeek'
Blade::render('<x-test name="CodeGeek" />');

PHPRedis Serialization and Compression Config Help

Petr Levtonov contributed the power to configure PHPRedis serialization and compression choices as a substitute for needing to overwrite the service supplier or outline a customized driver.

The PR launched the next serialization choices:

  • NONE
  • PHP
  • JSON

These options are now documented in the Redis - Laravel documentation.


1.45 GEEK