一時期は 「Facadeは邪道」って思ったたのですが、 app("db")とか書いてる時点でやってることは同じなので、
(app()->call()呼びまくるのも嫌なので)
それなら補完の効くFacadeの方が幸せになれるんじゃないか、と思うようになりました。
(ただし使いドコロには注意)
というわけでlumen で Facade
とりあえずlumenとide-helperを準備
$ lumen new sample
$ cd sample
$ composer require barryvdh/laravel-ide-helper
コメントアウトされているfacadeの設定を有効化して、IDE HELPERのプロバイダを入れる。
bootstrap/app.php
$app->withFacades();
// ...
$app->register(Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
補完用ファイルの作成!!
$ php artisan ide-helper:generate
はい、予想通り怒られますね。もうちょっと頑張ってみましょう。
もうちょっと頑張る
とりあえず怒られるのでmail
のパッケージを入れてみます。
composer require illuminate/mail
んでもう一回叩くと…
$ php artisan ide-helper:generate
はい、行けましたね。不思議ですね。
追記: lumen5.2からの記述
mailは入れなくても良くなった。
代わりにAuth周りの仕様が変わったらしく、
AUTH_GUARD=session
の記述を入れないと動かない。この辺は後で調べる。