1
私はこれを行う最良の方法はわかりませんが、基本的にいくつかのルートといくつかのベンダーも設定していますが、ベンダー "/フォーラム"を使用することができます。laravel最後のオプションとしてすべてのルートをキャッチ
Route::get('/', function() { return view('welcome'); });
Route::get('/contact', function() { return view('contact'); });
Route::get('/login', function() { return view('login'); });
Route::get('/signup', '[email protected]');
Route::get('/logout', '[email protected]');
Route::get('/{slug}', '[email protected]');
あなたは最後のルートは基本的にはスラグを取得した後、コントローラに、私はスラグでページを返す見ることができます:ここで
は私のルートです。問題は/フォーラムで、[email protected]
が呼び出されているので、Laravelはベンダーの前にこのルートファイルを見ていると仮定しています。それを設定するより良い方法はありますか?
Route::get('/{slug}', '[email protected]');
はベンダールートの後で最後のオプションとして呼び出されますか?
ありがとう:それは私は次のようになり
app/Providers/RouteServiceProvider.php
にロードされている他のすべてのルートの後にそれを追加することを示唆している最後にロードされている保証します。私が 'app/Providers/RouteServiceProvider.php'フォーラムに入れても、間違ったコントローラを使用しようとします。 '/ forum'ルートはベンダーパッケージによって処理されるので、' Route :: get( '/ {slug}'、 'App \ Http \ Controllers \ PageController @ show')をロードする必要があります。 } 'ベンダールートの後にも同様に – Packyohhh、そのベンダーのサービスプロバイダーを' App \ Providers \ RouteServiceProvider :: class 'の前に 'config/app.php'の' providers'配列に置き、最初にそのルートをロードする必要がありますあなたのルートの前に。 –