Autour de Laravel

Votre avis sur le routage par défaut de Laravel 8

Avatar de Bilal
Bilal

Bonjour à tous, Je sais pas si vous avez remarqué. Les routes par défaut de laravel ont un peu changé. Par exemple pour afficher la liste des postes :

avant (Laravel 7-6...) : On passe à la fonction get l'url et une chaine de caractère

Route::get('post', 'PostController@index');

Laravel 8 : On passe à la fonction get l'url et un collable

use App\Http\Controllers\PostController;

Route::get('post', [PostController::class, 'index']);

Qulequ'un sait quel est l'intêret derrière ce choix.

Avatar de itanea
itanea

Hello Bilal,

Alors selon la documentation de migration :

In previous releases of Laravel, the RouteServiceProvider class contained a $namespace property with a value of App\Http\Controllers. This value of this property was used to automatically prefix controller route declarations and controller route URL generation such as when calling the action helper.

In Laravel 8, this property is set to null by default. This allows your controller route declarations to use the standard PHP callable syntax, which provides better support for jumping to the controller class in many IDEs

Dans les versions précédentes de Laravel, le RouteServiceProvider avait une propriété $namespace qui pointait vers App\Http\Controllers. Dans Laravel 8 cette propriété est initée à null. Cela va permettre une meilleure interaction dans ton ide pour aller voir le contenu des classes en questions (avec par exemple le ctrl + survol de la classe).

Voilà !

Vous ne pouvez pas répondre à ce sujet.