Laravel任何新路线的空白页

时间:2016-04-18 14:21:22

标签: laravel-5

我正在使用Laravel 5.0并且已经在这个项目上开发了几个月而没有任何问题。我刚刚在控制器中添加了一个带有新方法的新路由。但无论我做什么,routes.php文件中的所有这些新条目都显示一个空白页面。

在我的routes.php中:

Route::get('dashboard/product_categories/testing', 'ProductCategoriesController@testing');

在ProductCategoriesController.php中:

public function testing() {
    die('Hello world!');
}

routes.php中的所有新条目都会发生这种情况。无论它指向什么控制器。

我不使用route:cache,因此无法解决这个问题源于哪个

请注意:这是一个未更改的项目。 httpd服务器正在运行,存储文件夹具有读/写权限

5 个答案:

答案 0 :(得分:3)

如果您有仪表板的资源控制器,请尝试在资源之前添加新路由。

答案 1 :(得分:2)

我完全忘记了这个问题,但我找到了解决方案:php artisan route:clear

答案 2 :(得分:0)

对我来说,所有答案都无济于事。
我的问题是两条路线相互匹配。

我的web.php文件的示例如下:

Route::get('user/{user}', 'UserController@show');
Route::get('user/restore, 'UserController@restore');

我花了一段时间才意识到这里发生了什么。

尽管在我的控制器中将$user类型转换为User的实例;我只是假设字符串restore与该路由不匹配。

最后,我意识到字符串restore作为参数传递给上述路由,因此无法匹配用户模型。

要解决此问题,我必须将路线更改为以下内容:

Route::get('user/{user}', 'UserController@show')->where('user', '\d+');
Route::get('user/restore, 'UserController@restore');

现在只有数字与该路由匹配,并且还原路由按预期工作。
另一个解决方案是更改顺序,但我不想这样做。

答案 3 :(得分:0)

尝试清除缓存:

php artisan cache:clear

答案 4 :(得分:0)

尝试在公共函数方法之前删除此内容:

  

@return \ Illuminate \ Http \ Response