PhpStormのLaaravel Pluginを入れたらコード補完が効くと思っていたのですが違うのですね。
調べてみたらbarryvdh/laravel-ide-helper: Laravel IDE Helperというのがあるようです。
冒頭のquick introduction/explanation!の動画を観たら、laravel-ide-helperをインストールしなくても_ide_helper.php を入れるだけでもコードが効くようなので両方試してみました。
_ide_helper.phpを入れる
動画のように、をLaravelのルートディレクトリに入れるだけ。この記事では/var/www/html
とします。
cd /var/www/html wget https://gist.githubusercontent.com/barryvdh/5227822/raw/4be028a27c4ec782965bb8f2fdcb4c08c71a441d/_ide_helper.php
Laravel 5 IDE Helper Generatorでコード補完を効かせる
Composerでbarryvdh/laravel-ide-helperをインストールします。
先ほどと同じくLaravelのルートディレクトリを/var/www/html/
として入れる例です。
composer require barryvdh/laravel-ide-helper
config/app.php
のproviders
のキーの配列に以下を追加。
/* * Laravel 5 IDE Helper Generator */ Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class,
以下のコマンドで_ide_helper.php
を生成できます。
php artisan ide-helper:generate
これでクイックインストールと同じようにRoute
やValidator
が補完できるようになりました。
しかしまだ自作モデルのメソッドの補完が効かないので、モデルの補完もできるようにしてみます。
モデルの補完
データベースの列を取得するにはdoctrine/dbal: ~2.3
が必要とのことなので、Composerでインストールします。
composer require doctrine/dbal
モデルの補完用ファイルを生成します。
php artisan ide-helper:models -N
-N
モデルファイルに直接書くのではなく_ide_helper_models.php
に設定をまとめて出力するためのオプションです。
ちなみに、私の環境ではモデルを指定したphp artisan ide-helper:models Book
というコマンドではコードが生成されませんでした。--dir
などでモデルの場所を指定してもダメで、モデルを指定しないで実行したら出力することができました。
今はまだLaravelの理解が足りなすぎて調べるのに苦労しそうなので、この問題はしばらく棚上げしてモデルを追加したらphp artisan ide-helper:models -N
でやっていこうと思います。
他にもphp artisan ide-helper:meta
というのもあったのですが、よくわからなかったのでわかったら書いておきます。