让 Phpstorm 完整支持 Laravel 并自动补全函数

这里用到了一个 IDE helper,我暂时还不是非常了解 PhpDoc 的原理,不过依葫芦画瓢吧。

Laravel 5 IDE Helper Generator

根据 Readme 安装即可,这样 routes.php 就不会报错了。

不过还有一个问题,在写 migration 的时候,->unsigned()->index() 不能自动补全,还会有函数报错。在 stackoverflow 找到了答案:

Calling $table->integer(‘user_id’) returns a new instance of Illuminate\Support\Fluent. But the Fluent class does not provide an unique() method. Instead it’s using PHP magic method __call. That’s why PHPStorm is complaining.

然后解决办法是在 IDE Helper 的末尾增加以下几行:

namespace Illuminate\Support;

/**
 * @method Fluent first()
 * @method Fluent after($column)
 * @method Fluent change()
 * @method Fluent nullable()
 * @method Fluent unsigned()
 * @method Fluent unique()
 * @method Fluent index()
 * @method Fluent primary()
 * @method Fluent default($value)
 * @method Fluent onUpdate($value)
 * @method Fluent onDelete($value)
 * @method Fluent references($value)
 * @method Fluent on($value)
 */
class Fluent {}

终于不再提示错误了:

migration

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.