Mat*_*eiß 4 php ajax rest laravel eloquent
我使用vue.js和Laravel 5.1来创建一个小文件共享应用程序.
一切都很完美,但现在我想确保每个文件的所有者能够从他的文件中删除用户(当然,他必须首先与这些用户共享文件),因此我向一个名为的URL发出PUT请求/files/share.
我的Laravel路线如下:
Route::put('/files/share', 'FileController@test');
Run Code Online (Sandbox Code Playgroud)
当我运行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);
}
});
Run Code Online (Sandbox Code Playgroud)
我得到的确切错误是这样的:
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].
Run Code Online (Sandbox Code Playgroud)
但应用程序甚至没有到达控制器,如果我只是从那里返回一些错误是相同的.
通过Laravel路线,订单很重要.具有动态段files/{file}或资源路径的路由应始终在静态路由之后定义.否则,Laravel会将share您网址中的部分解释为ID.
所以,正如你自己想出的那样,你只需要改变路线的顺序:
Route::put('/files/share', 'FileController@test');
Route::resource('/files', 'FileController');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3910 次 |
| 最近记录: |