加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

雄辩的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

如果需要调整行为,还有几个选项和设置可用,但这是它的要点.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读