调用未定义的方法IlluminateHttpResponse::view()



我安装了Laravel,现在每次运行composer updatephp artisan routes或任何composer命令时都会出现此错误:

Call to undefined method IlluminateHttpResponse::view()

到目前为止,我已经在互联网上搜索并尝试了以下建议的解决方案,但没有任何效果:

1( 网上很多建议的答案都是删除vendor/compiled.php,重新运行composer更新。但当我转到供应商文件夹时,我在那里找不到任何compiled.php文件。唯一存在的文件是:autoload.php

2( 我还尝试在storage/framework/文件夹中搜索compiled.php,但也没有。

3( 我甚至尝试使用--force标志php artisan optimize --force运行optimize,它显示了与上面相同的错误。

4( 我查看了boostrap/autoload.php的编译路径,它说$compiledPath = __DIR__.'/cache/compiled.php';我只能看到boostrap/cache文件夹,而它没有这个文件。

这里怎么了?我是拉拉维尔的新手,我不明白这个错误意味着什么。根据答案,我正在四处寻找compiled.php来删除并再次运行更新,我甚至不知道这是否是正确的解决方案。有人能在这里帮助我如何进行故障排除吗?

我昨天更新后安装了Laravel 5.1.6。我今天还运行了composer dumpautoload命令,我想知道这个错误是否在那之后开始发生。现在composer中的任何命令都会出现上述错误。

编辑:现在,甚至我的网站浏览器视图也显示了错误:

FatalErrorException in Facade.php line 210: 
Call to undefined method IlluminateFoundationApplication::missing()

我还尝试删除完整的供应商文件夹和composer.lock,并重新运行composer install。在安装接近尾声时,当生成自动加载文件时,它再次显示此错误并停止。

第2版:@NehalHasnayeen在评论中说得绝对正确。此错误是由于应用程序调用响应类上的视图方法而导致的,而响应类没有视图方法。一旦我把它从我的路线上删除,它就起了作用。这是我的路线文件:

Route::get('/', function () {
    return view('index');
    //return View::make('index');
});
Route::group(['prefix' => 'api'], function()
{
    Route::resource('authenticate', 'AuthenticateController', ['only' => ['index']]);
    Route::post('authenticate', 'AuthenticateController@authenticate');
});
// -------- THIS WAS CAUSING THE ISSUE - REMOVING THIS WORKED AFTER THAT ------
//App::missing(function($exception) {
//    return view('index');
//});

这就引出了我的最后一个问题,为什么包罗万象的路线会出现这个错误?我从这里了解到,添加以上内容将把所有其他路由请求重定向到索引。什么是正确的方法?是在《拉拉威尔5》中发生了变化,还是我做错了什么?

对于第一个错误:你的应用程序正在Response类上调用view方法,但Response类没有view方法,所以找到它调用此方法的文件&删除它&用正确的方法替换

对于第二个错误:App::缺少的是laravel 4版本,它在laravel 5中被删除。要在您的app\exceptions\handler.php文件中实现相同的效果,请在呈现方法中添加此项

public function render($request, Exception $e)
{
    if ($e instanceof SymfonyComponentHttpKernelExceptionNotFoundHttpException) {
        return response()->view('index', [], 404);
    }
    return parent::render($request, $e);
}

相关内容

  • 没有找到相关文章

最新更新