routes - 在 Laravel 8 中找不到 404
问题描述
我对路由中的可选参数有疑问。当我去时,以下路线有效:
http://localhost/orders/create/1
但它不适用于http://localhost/orders/create
并返回404 error (not found)。
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/ 一起使用,因为客户端参数是可选的。
尾部斜线是问题所在。
推荐阅读
- python - 在训练中拆分数据集并设置验证。为什么会出现这个错误?
- php - 在 Symfony 4 中将路由重定向到语言前缀
- c# - intent.PutExtra 需要 Android.OS.Bundle
- ios - URLQueryItem 值是可选的
- python - 无法从 Jupyter 笔记本中的 conda 环境导入 rpy2.robjects 但在控制台中
- google-chrome - Chrome 扩展程序 - 我可以将我的扩展程序共享为 crx 文件以使用某人吗?
- image - Yocto-bitbake qt5-image - 从结果中为 rpi 创建可启动闪存时遇到问题
- amazon-web-services - AWS Application Load Balancer WebSocket 基于元数据的粘性?
- power-automate - 检查 MS Flow 表达式中的日期字段是否为空白或为空
- matlab - 将一组索引索引到矩阵