Laravel仅在某些路线上返回空白页面

时间:2016-11-06 16:22:19

标签: php laravel laravel-5 laravel-5.3

我遇到路线返回空白页面的问题。我使用Homestead作为我的开发环境,我不确定如何调试。

当我访问白页时,/storage/logs/laravel ...并未返回任何例外情况。

web.php(它失败了):

Route::get('/clinic/register', 'ClinicController@register');

Controller.php这样:

public function register()
{
    return view('clinic.register', ['specialisms' => Specialism::pluck('specialism', 'id')]);
}

然而,当我访问/clinic/register时,我会看到一个空白的白页。我怎么知道它为什么失败?当然白页会在某处返回异常吗?

1 个答案:

答案 0 :(得分:5)

由于您尚未提供整个路线设置。这个答案是我最好的猜测。看看它是否有帮助。

您的问题暗示了不正确的路线设置。如果您已创建诊所资源,则应在其前面加上诊所/注册路由。

// clinic/register route should come first
Route::get('clinic/register','ClinicController@register');

// followed by rest of the routes which resource will create
Route::resource('clinic','ClinicController');

获取空白页面的原因是因为Route :: resource将使用通配符创建一些路由。 对于例如诊所/ {clinic}将在控制器上显示方法。因此,当您向诊所/注册提出请求时,它将映射到此 show 方法,而不是注册方法。

没有任何错误的一种可能性是 show 方法还没有任何代码。因此,一个空白的回应。

总结:您注册路线的顺序很重要