路线laravel奇怪的错误

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了路线laravel奇怪的错误相关的知识,希望对你有一定的参考价值。

我对laravel的路线有一些问题

Route::get('aset/create', 'TransaksiController@aset_create');
Route::get('aset/{id}', 'TransaksiController@aset_view');

这些路线很好,但当我改变位置时

Route::get('aset/{id}', 'TransaksiController@aset_view');
Route::get('aset/create', 'TransaksiController@aset_create');

aset/create去了aset/view

enter image description here

发生了什么? 谢谢!

答案

aset/create将触发Route::get('aset/{id}', 'TransaksiController@aset_view');,因为您可以看到显示的模板是用于查看aset-view.blade.php而不是创建的模板,因此laravel将create标识为id参数,因此您的数据库查询将不返回任何行,从而创建您看到的错误,

要解决此问题,您可以保留原始订单,也可以更改视图路径以仅匹配数字(或不匹配create

Route::get('aset/{id}', 'TransaksiController@aset_view')->where('id', '[0-9]+');
另一答案

aset-view.blade.php文件,这是你有问题的地方。您要么将变量作为对象访问,要么将null或数组作为对象访问

另一答案

{id}是一个传递它的参数它正在接收现在创建为parameter.since它在top.Rearrange将解决问题.id将捕获你传递的任何内容

以上是关于路线laravel奇怪的错误的主要内容,如果未能解决你的问题,请参考以下文章

LARAVEL 路线不接受

Laravel 路由上奇怪的白屏(“/”)

更改返回视图以在 laravel 搜索功能上返回路线

Laravel:创建资源路线会导致工匠错误

Laravel发布路线错误

Laravel 重定向到错误的路线