gpt4 book ai didi

php - Laravel NotFoundHttpException 虽然路由存在

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:02:32 35 4
gpt4 key购买 nike

我使用 vue.js 和 Laravel 5.1 创建了一个小型文件共享应用程序。

一切都很完美,但现在我想确保每个文件的所有者能够从他的文件中删除用户(当然,他首先必须与这些用户共享文件),因此我向一个 PUT 请求名为 /files/share 的 URL。

我的 Laravel 路由如下所示:

Route::put('/files/share', 'FileController@test');

当我运行 php artisan route:list 时,它也会被列出。

客户端代码如下所示:

this.$http.put('/files/share', { some_data }, function(data) {
if(data.error){
this.$set('error', data.error);
} else {
this.$set('file', data);
}
});

我得到的确切错误是:

2/2 NotFoundHttpException in Handler.php line 46:
No query results for model [App\File].
1/2 ModelNotFoundException in Builder.php line 129:
No query results for model [App\File].

但应用程序甚至没有到达 Controller ,如果我只是从那里返回一些东西,错误是相同的。

最佳答案

对于 Laravel 路由,顺序很重要。具有动态段(如 files/{file} 或资源路由)的路由应始终定义在静态段之后。否则 Laravel 会将你的 URL 中的 share 部分解释为 ID。

因此,正如您自己弄清楚的那样,您只需要更改路线的顺序即可:

Route::put('/files/share', 'FileController@test');
Route::resource('/files', 'FileController');

关于php - Laravel NotFoundHttpException 虽然路由存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32271008/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com