PhpStorm找不到Laravel助手

时间:2018-09-21 15:05:20

标签: laravel phpstorm helper

我使用PhpStorm 2018.1.4。我安装了软件包laravel-ide-helper。这使PhpStorm可以查看模型方法,但看不到Laravel帮助程序提供的任何链接方法。例如,我在控制器中有以下代码:

return response()->file($path,['content-type' => 'application/pdf']); 

PhpStorm对我说:

  

在\ Illuminate \ Contracts \ Routing \ ResponseFactory | \ Illuminate \ Http \ Response中找不到方法“文件”。

如何解决?

UPD:当然,在安装软件包之后,我运行了the artisan命令:

php artisan ide-helper:generate
php artisan ide-helper:meta

1 个答案:

答案 0 :(得分:3)

仅安装laravel-ide-helper不会执行任何操作。您需要运行artisan命令来生成phpstorm将使用的文件。

php artisan ide-helper:generate

php artisan ide-helper:meta

将帮助phpStorm自动完成。

更新:由于已执行这些操作,因此实际的问题是laravel结构问题:

file()中实际上不存在辅助程序ResponseFactoryresponse()返回了ResponseFactory的结果),因此IDE辅助程序无法映射到它。

但是,

file()确实存在于立面中,因此,如果您要这样做:

\Response::file($path,['content-type' => 'application/pdf']),它将自动完成。

这是一种变通方法,但是除非将file()添加到laravel级别的响应工厂中,否则没有太多的ide帮助程序或phpstorm可以做。