2

私はしばらくの間 Lumen フレームワークを使用していますが、繰り返し発生する問題に直面しています。

私の例では、ページ/index/validation/にはパラメーターが必要です。ここでは で表され{key}ます。ただし、パラメーターなしで呼び出すと/index/validation/、ページが見つからないという例外を発生させない方法がわかりません。

そこで、ホームページにリダイレクトする関数を作成しました

ルート.php

$app->get('/index/validation', 'App\Http\Controllers\IndexController@redirectIndex');
$app->get('/index/validation/{key}', 'App\Http\Controllers\IndexController@validation');

インデックスコントローラー

public function redirectIndex() {
    return redirect('index');
}

ここで私がしていることはうまくいきますが、正しい方法を適用するかどうか、または私の目標を達成する別の方法があるかどうかはわかりません。

4

1 に答える 1

2

キャッチされなかったすべての例外は、 内で処理されますApp\Exceptions\Handler。見つからないすべての例外をリダイレクトするには、render()メソッドを次のように変更します。

public function render($request, Exception $e)
{
    if($e instanceof NotFoundHttpException){
        return redirect('index');
    }
    return parent::render($request, $e);
}

また、次のようにクラスをインポートする必要があります。

use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
于 2015-05-11T20:43:17.067 に答える