在Laravel 8中找不到404

问题描述

我的路线中的可选参数有问题。我去时,以下路线适用: http://localhost/orders/create/1,但不适用于http://localhost/orders/create,并返回 404错误(未找到)

    Route::name( 'orders.' )->prefix( 'orders' )->group( function(){

        Route::get( '/create/{client?}',[ \App\Http\Controllers\OrderController::class,'create' ] )->name( 'create' );

    } );

    public function create( Client $client = null ){

        return [ $client ];

    }

我已经检查过,并且ID = 1的客户端存在。有什么想法吗?

解决方法

那是因为您正在定义路由/ create / {client?},但未定义/ create,可能您的脚本可以与/ create /一起使用,因为客户端参数是可选的。

最后的斜杠是问题所在。