雄辩的ORM代码提示PhpStorm
发布时间:2020-12-14 05:35:25 所属栏目:Java 来源:网络整理
导读:所以我刚刚开始与Laravel(使用v5)和雄辩.我正在努力获取一些基本的API并运行,并注意到许多工作方法不显示在PhpStorm的代码提示 所以我有这个模型: namespace ProjectModels;use IlluminateDatabaseEloquentModel;use IlluminateContractsAuthAuthent
所以我刚刚开始与Laravel(使用v5)和雄辩.我正在努力获取一些基本的API并运行,并注意到许多工作方法不显示在PhpStorm的代码提示
所以我有这个模型: namespace ProjectModels; use IlluminateDatabaseEloquentModel; use IlluminateContractsAuthAuthenticatable as AuthenticatableContract; use IlluminateContractsAuthCanResetPassword as CanResetPasswordContract; class User extends Model implements AuthenticatableContract,CanResetPasswordContract { } 在我的一个控制器我试图做 User::query()->orderBy('id','desc'); User :: query()创建一个Eloquent Builder对象,orderBy()行为正确,没有错误.但是,当键入User :: query() – >时,PhpStorm不显示orderBy()(或take(),skip(),我确定其他)并在实际使用时发出警告. 我正在使用Laravel IDE Helper,它非常有助于向门面提供代码提示,但不是对模型/构建者的看法. 有人有解决这个问题吗? 解决方法
对于未来的Google员工,如果您仍然坚持使用Laravel,OP也可能是OP.
laravel-ide-helper套装非常优雅地解决了这个问题,我相信这是一个比较新的功能;生成模型PHPDocs. 您可以使用此命令为所有PHPDocs生成单独的文件: php artisan ide-helper:models 生成的元数据将为每个类看起来像这样: namespace App { /** * AppPost * * @property integer $id * @property integer $author_id * @property string $title * @property string $text * @property CarbonCarbon $created_at * @property CarbonCarbon $updated_at * @property-read User $author * @property-read IlluminateDatabaseEloquentCollection|Comment[] $comments */ class Post {} } 这在PHPStorm中给我带来了问题,但是软件在多个类定义中抱怨.幸运的是,一个选项可以直接写入模型文件: php artisan ide-helper:models -W 如果需要调整行为,还有几个选项和设置可用,但这是它的要点. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |