PhpStorm 使用 \Nwidart\Modules 自动完成
PhpStorm autocomplete with \Nwidart\Modules
问题是我使用 PhpStorm IDE。 Laravel 项目由 nwidart/laravel-modules 管理。
但是,PhpStorm 不处理基本的 Laravel 功能。例如:findorfail()
,对于自己的模型:
Method 'findorfail' not found in \Modules\Companies\Models\Companies_adresses
我做了以下操作来启用自动完成:
- 安装https://github.com/barryvdh/laravel-ide-helper#automatic-phpdoc-generation-for-laravel-facades
- 启用 PhpStorm 插件:
这很混乱,因为它没有正确给出提示。它没有列出数据库列等......PHPDoc仍然浮现在脑海,但我不知道如何开始!
你没有想法?我感到完全迷失了:(
我设置了 Laravel IDE 助手,但我必须将以下内容添加到我的所有模型中......或者您可以添加到一个新模型 class 然后扩展到您的所有模型。无论哪种方式,这都会让 PHPStorm 正确读取外观方法:
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Model;
/**
* Class Employee
*
* @mixin Builder
*/
class Employee extends Model
{
// blah blah blah
}
确保 PHPDoc 与您的模型相吻合。关键位是 @mixin
行,它为 PHP Storm 提供了与模型的所有外观方法的连接。您仍然需要 IDE 助手。但是有了这个 PHPStorm 会在您键入时提供建议,并允许您按住 Control 键并单击以从项目的其他地方查看方法本身。
您还可以使用 Laravel Idea 插件生成高级 ide 辅助代码。主菜单 > 代码 > Laravel Idea 代码生成 > 生成 Eloquent 辅助代码。
问题是我使用 PhpStorm IDE。 Laravel 项目由 nwidart/laravel-modules 管理。
但是,PhpStorm 不处理基本的 Laravel 功能。例如:findorfail()
,对于自己的模型:
Method 'findorfail' not found in \Modules\Companies\Models\Companies_adresses
我做了以下操作来启用自动完成:
- 安装https://github.com/barryvdh/laravel-ide-helper#automatic-phpdoc-generation-for-laravel-facades
- 启用 PhpStorm 插件:
这很混乱,因为它没有正确给出提示。它没有列出数据库列等......PHPDoc仍然浮现在脑海,但我不知道如何开始!
你没有想法?我感到完全迷失了:(
我设置了 Laravel IDE 助手,但我必须将以下内容添加到我的所有模型中......或者您可以添加到一个新模型 class 然后扩展到您的所有模型。无论哪种方式,这都会让 PHPStorm 正确读取外观方法:
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Model;
/**
* Class Employee
*
* @mixin Builder
*/
class Employee extends Model
{
// blah blah blah
}
确保 PHPDoc 与您的模型相吻合。关键位是 @mixin
行,它为 PHP Storm 提供了与模型的所有外观方法的连接。您仍然需要 IDE 助手。但是有了这个 PHPStorm 会在您键入时提供建议,并允许您按住 Control 键并单击以从项目的其他地方查看方法本身。
您还可以使用 Laravel Idea 插件生成高级 ide 辅助代码。主菜单 > 代码 > Laravel Idea 代码生成 > 生成 Eloquent 辅助代码。