Ich frage mich, wie man mit 400+ Routen zu tun.Verwalten von mehr als 400 Routen in Laravel mit PhpStorm Autovervollständigung
Wir trennen derzeit alle Routen in mehrere Dateien entsprechend dem Controller-Namespace, zu dem sie gehören.
Die Struktur App/Http/Routes
sieht ungefähr so aus:
- Auth.php
- Marketing.php
- Orders.php
Alle unsere Routen benannt sind. Aber hier kommt das eigentliche Problem, das wir haben.
Unsere Routen werden mit Klassen benannt, die mit Konstanten gefüllt sind und den Namen der Route definieren.
namespace App\Http\Controllers\Marketing;
class RouteConstants
{
/**
* MarketingController
*/
const INDEX = 'marketing.index';
const DISABLED = 'marketing.disabled';
Diese Konstantenklassen befinden sich im Namespace Controller. Sie werden dann in den Marketing.php
Routen verwendet Datei wie folgt:
/**
* Marketing Routes
*/
Route::group(['namespace' => 'App\Http\Controllers\Marketing'], function() {
/**
* MarketingController Routes
*/
Route::get('marketing/overview', [
'uses' => '[email protected]',
'as' => MarketingRoutes::INDEX
]);
Route::get('marketing/disabled', [
'uses' => '[email protected]',
'as' => MarketingRoutes::DISABLED
]);```
Dies geschieht, weil es uns die PhpStorm zur automatischen Vervollständigung Funktionen nutzen können und auch sehen, wo jede Route verwendet wird.
Aber das Problem dabei ist, dass wir zwei Systeme gleichzeitig verwenden. Laravels internes Routingbenennungssystem und gleichzeitig verwenden wir unser eigenes System, das die Namen als Konstanten definiert.
Es muss eine bessere Möglichkeit geben, diese Anzahl an Routen zu verwalten und die Verwendung in den Projektdateien überprüfen zu können.
Derzeit ist es auch ziemlich chaotisch in unseren Ansichten:
<a href="{{ route(App\Http\Controllers\Marketing\RouteConstants::INDEX) }}">Marketing</a>
Ich habe bereits versucht, das Laravel Plugin für PhpStorm aber nicht richtig funktioniert, wenn Sie einen Ordner mit Routen, die das in die RouteServiceProvider
automatisch geladen werden.
Getestet und es funktioniert. Der einzige Nachteil ist, dass Sie nicht sehen können, wo Ihre Routen in der Anwendung verwendet werden. Ich schätze, ich werde ein Problem auf dem Laravel Phpstorm Plugin öffnen, um diese Funktionalität hinzuzufügen. –
Eröffnet ein Problem auf dem Laravel Phpstorm Plugin https://github.com/Haehnchen/idea-php-laravel-plugin/issues/85 –