Probleme:Laravel 5.2 verschachtelte Route Gruppen mit Middleware
- Session :: Flash wird nicht funktionieren
- Sonderbare Routenparameter
Problem 1
ich erlebt habe ein Fehler, bei dem Session :: Flash nicht funktioniert. Ich habe auch einen Workaround gefunden, aber es ist ... komisch.
Ich denke, es ist etwas falsch mit verschachtelten Gruppen und Middlewares.
Code:
Route::group(['middleware' => 'web'], function() {
Route::group([
'prefix' => '{locale}',
'middleware' => ['localized']
], function($locale)
{
Route::resource('/', 'ProductController', ['only' => ['index']]);
Route::get('/cart', '[email protected]')->name('show-shopping-cart');
});
Route::patch('/cart', '[email protected]')->name('patch-cart');
});
jetzt .. dies funktionieren wird, wenn ich diese Art und Weise ändern kernel.php:
von
protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
];
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
],
'api' => [
'throttle:60,1',
],
];
zu
protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
];
protected $middlewareGroups = [
'web' => [
],
'api' => [
'throttle:60,1',
],
];
was machst du Denk darüber nach?
Problem 2
In den Routen oben wird Product @ Show 2 Parameter bekommen: locale und id.
Zum Beispiel, wenn ich navigieren Sie zu/en/4
function show($id){
dd($id);
}
$ id = "en"
es so funktionieren würde:
function show($locale, $id){
dd($id);
}
ist dies durch Design? Wenn ja, gibt es eine Möglichkeit zu vermeiden, dass das Gebietsschema $ an Routen innerhalb der Gruppe weitergegeben wird?