我用 artisan make:controller 创建了一个RESTful控制器,我在routes.php上使用资源方法,这是我的routes.php:
Route::resource('page', 'PageController');
我的控制器上没有任何编辑方法(我将其删除)所以如果我点击此URI:
http://laravel.dev/page/{id}/edit
Laravel应返回404页面,但实例返回空白页面。
如何让它为不存在的方法返回404响应?
答案 0 :(得分:1)
问题在于存储目录的许可,但我想知道为什么它刚刚发生在这个控制器上?我从应用程序的其他部分获取错误没有问题。
无论如何我首先改变了存储目录的权限:
sudo chmod -R 777 storage/
然后我得到 MethodNotFoundException ,所以我将 only 添加到资源方法的第三部分来自定义我的路线并且每件事情都很好:
Route::resource('page', 'PageController', ['only' => ['index', 'show'] ]);
现在抛出 NotFoundHttpException 。