Laravel make:controller -h 日本語訳　一部使い方

# 【Laravel】artisan make:controller アルチザン メイクコントローラーのオプション
詳しくまとまっているところが見つけられなかったので
自分で動かしながらふむふむと思った内容をまとめています。

間違いなどありましたらご指摘いただけますと幸いです。


```ターミナル
# artisanコントローラーヘルプ閲覧コマンド
php artisan make:controller -h


Options:
	-m, --model[=MODEL]		Generate a resource controller for the given model.
	-m, --model[=MODEL]		指定されたモデルのリソースコントローラを生成します。

	-r, --resource			Generate a resource controller class.
	-r, --resource			リソースコントローラークラスを生成します。

	-p, --parent[=PARENT]	Generate a nested resource controller class.
	-p, --parent[=PARENT]	ネストされたリソースコントローラークラスを生成します。

	-h, --help				Display this help message
	-h, --help				このヘルプメッセージを表示します

	-q, --quiet				Do not output any message
	-q, --quiet				メッセージを出力しません

	-V, --version			Display this application version
	-V, --version			このアプリケーションのバージョンを表示します

		--ansi				Force ANSI output
		--ansi				ANSI出力を強制します。

		--no-ansi			Disable ANSI output
		--no-ansi			ANSI出力を無効にします

	-n, --no-interaction	Do not ask any interactive question
	-n, --no-interaction	インタラクティブな質問をしません

		--env[=ENV]			The environment the command should run under
		--env[=ENV]			コマンドを実行する環境

	-v|vv|vvv, --verbose	Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
	-v|vv|vvv, --verbose	メッセージの冗長性を増やします。1は通常の出力、2はより詳細な出力、3はデバッグです。
	
```

## -m
```
  -m, --model[=MODEL]    Generate a resource controller for the given model.
　-m, --model[=MODEL]    指定されたモデルのリソースコントローラを生成します。
```
use モデル追加する

サンプル下記

```
php artisan make:controller sampleAsyn005Controller -m Http\Models\demos
php artisan make:controller コントローラ名 -m モデル名
```
該当のモデルが存在しない場合
下記メッセージを表示する
「yes」を入力すると、モデルファイルを作成する。
「no」を入力すると、モデルファイルは作成しない。

```
A App\Http\Models\demos model does not exist. Do you want to generate it? (yes/no) [yes]:
```

なお設定したモデルのuseを自動に記載される。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/45687/493d05e8-2b8b-0018-6350-52407588b0ea.png)



## -r
```
-p, --parent[=PARENT]  Generate a nested resource controller class.
-p, --parent[=PARENT]  ネストされたリソースコントローラークラスを生成します。
```

リソースコントローラークラスを作成するオプション
具体的には下記を追加する
public function index()
public function create()
public function store()
public function show()
public function edit()
public function update()
public function destroy()

```
php artisan make:controller sampleAsynController -r
php artisan make:controller コントローラ名 -r
```

すべてではないがイメージは下記参照

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/45687/2353bf2e-b4fe-d5b8-0ebc-789d00d357d7.png)

## -q
```
-q, --quiet				Do not output any message
-q, --quiet				メッセージを出力しません
```

アルチザンコマンド実行完了メッセージの表示を行いません。
具体的には下記のようなメッセージなどが非表示となる

```
Controller created successfully.
```


## -n
```
-n, --no-interaction	Do not ask any interactive question
-n, --no-interaction	インタラクティブな質問をしません
```
インタラクティブな質問をしません

具体的には下記のようなメッセージなど選択肢は「yes」が自動選択される

```
A App\Http\Models\demos model does not exist. Do you want to generate it? (yes/no) [yes]:
```

実行サンプル

```
php artisan make:controller コントローラ名 -m モデル名（存在しないモデル） -n
Model created successfully.
Controller created successfully.
```

### インタラクティブとは
インタラクティブとは 「双方向」とか「対話式」と意味で一方通行ではなく返答が返ってきて回答するなどのイメージ
今回のケースは指定のモデルありませんが作りますか？という質問はしないというオプションが設定可能という意味になる