principale App Itinerari:Come non sovraccaricare i percorsi principali con i percorsi dei pacchetti?
Route::get('/login', [
'as' => 'user.login',
'uses' => '[email protected]'
];
Route::get('/logout', [
'as' => 'user.logout',
'uses' => '[email protected]'
];
Route::get('/admin', [
'as' => 'admin.index',
'uses' => '[email protected]'
];
Ho un pacchetto (fornitore) (esempio: Metrakit/mypackage) con un file routes.php. In questo file ho un percorso:
Route::get('/{slug}', [
'as' => 'item.show',
'uses' => '[email protected]'
];
Questo percorso sovraccarica tutti i miei percorsi principali! I miei percorsi come "/ login", "/ logout", "/ bob", ... sono tutti reindirizzati al mio controller ItemController.
Io non voglio avere un percorso come
Route::get('/item/{slug}', array('as' => 'item.show', 'uses' => '[email protected]');
I pensa, devo fare uno schema di rotta in questo modo:
Route::pattern('slug', '^((?!(login|logout|admin)).)*$');
ma sembra un po 'sporca e non è dinamico.
Quindi sto cercando una soluzione migliore.
Il problema è l'ordine in cui vengono caricati i percorsi. Probabilmente stai usando il caricamento dei tuoi percorsi personalizzati nel metodo del pacchetto 'boot()'. Questo carica i percorsi dei pacchetti prima delle rotte normali. Posizionare una rotta di catchall in alto farà quello che stai vedendo in questo momento. Immagino che l'opzione migliore sarebbe non caricare automaticamente i percorsi dal pacchetto nel metodo di avvio, ma caricarli manualmente nel filtro precedente (dopo aver caricato i percorsi regolari). – Robert