はじめに
Laravelを使っています。
コントローラ、モデル、辺りまでは分かるのですが、フォームリクエスト、サービスコンテナ、サービスプロバイダー…、となるとよくつかめなかったりします。
LaravelではCakePHPでいうところのbakeのような機能がartisanにて提供されています。
そのリストを調べてまとめてみました。
$ php artisan make
make make:job make:model make:seeder
make:auth make:listener make:notification make:test
make:command make:mail make:policy
make:controller make:middleware make:provider
make:event make:migration make:request
名前 | 作成されるもの | 説明 |
---|---|---|
auth | ルートとビュー | ログインと登録用のスキャフォルドを作成します。 |
command | artisanコマンド用ファイル | 自前でartisanを作成できます。 |
controller | コントローラ | ルートから受けるところです。 |
event | イベント | イベント発火周りを書きます。リスナで受けます。 |
job | ジョブ | キューで処理するための行うための単位、ジョブを書きます。 |
listener | リスナ | 発火したイベントに対応する処理を書きます。 |
メールクラス | メール。 | |
middleware | ミドルウェア | 処理の途中にフックさせる処理を書きます。 |
migration | マイグレーション | 開発したDB構成の差分を書きます。 |
model | モデル | モデルクラスを作成します。-m でマイグレーションもセットで作れます。 |
notification | 通知 | 通知系のクラスです。SMSやメール、Slackもサポートされています。 |
policy | ポリシー | モデルを取りまとめたり制約を書きます。 |
provider | サービスプロバイダ | コンテナ、ルートの起動や登録を書きます。 |
request | リクエスト | リクエスト処理をまとめた処理を書きます。 |
seeder | シーダー | DBに入れる初期値セットを作成する処理を書きます。 |
test | テスト | ユニットテスト、ブラウザテストの処理を書きます。 |
感想
使ったことあるクラス、全然使ったこと無いクラスも結構ありますね。
ジョブ、イベント、リスナ周りはどうやって使ったらよいかまだつかめてません。機会があったら使ってみます。
参考
http://qiita.com/bmf_san/items/e96bb3533de0792f9382
http://qiita.com/zaburo/items/e8e786624f88c253c87d
http://qiita.com/nunulk/items/edb12902d609ca53187a
https://laravel.com/docs/5.4/authorization#generating-policies
https://laravel.com/docs/5.4/requests
https://laravel.com/docs/5.4/queues#generating-job-classes