Laravel 5.4は単一の職人コマンドでモデル、コントローラー、移行を作成します


149

次のコマンドでモデルとリソースコントローラー(モデルにバインド)を作成できます

php artisan make:controller TodoController --resource --model=Todo

上記のコマンドでマイグレーションも作成したいのですが可能ですか?


この場合、フラグ--resourceは必要ないと思います。-モデルで十分です。
Luca Reghellin、2018年

回答:


410

モデルから始めればできる

php artisan make:model Todo -mcr

実行php artisan make:model --helpすると、使用可能なすべてのオプションを確認できます

-m、--migrationモデルの新しい移行ファイルを作成します。
-c、--controllerモデルの新しいコントローラーを作成します。
-r、--resource生成されたコントローラーがリソースコントローラーであるべきかどうかを示します

更新

新しいバージョンのlaravel> 5.6で@arunがコメントしたように、次のコマンドを実行できます。

php artisan make:model Todo -a

-a、--allモデルの移行、ファクトリ、およびリソースコントローラーを生成します


32
今、私たちは使用することができphp artisan make:model Todo -a、モデル、移行、リソースコントローラと作成するfactory
アルン

たとえば、メソッドshowparamがmake:model -mcrvs make:controller --resourceメソッドshowparamで作成されるとき、メソッドparamがモデルオブジェクトである理由$id
Cr1xus

@ Cr1xus 2番目のコマンドでは、使用するリソースモデルを指定する必要があるため、最初のコマンドでは、モデルを作成したばかりなので、-rフラグは正しいモデルを認識しています。
Christophvh

このコマンドを使用すると、app / http / resourcesディレクトリにModelResource.phpが作成されないのはなぜですか?
tyasird '15

@tyasirdリソースは、コントローラーに自動注入モデルがプリロードされることを意味します。これはapiリソースを意味するものではありません
Christophvh

21

あなたが作ることができます モデル + 移動 + コントローラは、このコマンドを使用して、すべて1行で、:

php artisan make:model --migration --controller test

短縮版: php artisan make:model -mc test

出力:-

モデルが正常に作成されました。

作成された移行:2018_03_10_002331_create_tests_table

コントローラが正常に作成されました。


コントローラですべてのCRUD操作を実行する必要がある場合次のコマンドを使用します。

php artisan make:model --migration --controller test --resource  

短縮版: php artisan make:model -mc test --resource


1
php artisan make:model --migration --controller --resource Testを使用してください。
Affan

ブロ私は最初に作成し、次にこれを投稿します。実際に私はあなたの与えられたコマンドを使用し、最後に--resourceを追加します。この作業はあなたから確認してください。私はlaravel 5.4を使用しています。laravelの下位バージョンがサポートされていない可能性があります。@Udhav
Affan

私は新鮮なLaravelをインストールしました。提案コードは機能しています。@ Affanに感謝します:)
Udhav Sarvaiya 2018

15

次のコマンドで実行できます。

php artisan make:model post -mcr

ブリーフ:

-m、移行を作成する

-cはコントローラーを作成します

コントローラにリソースがあることを指定する-r


Opは彼の質問にリソースを持っていたので、あなたの答えは不完全です。
Landon Call

8

更新しました

Laravel 6モデル全体

モデルの移行、シーダー、ファクトリ、およびリソースコントローラーを生成するには

php artisan make:model Todo -a

または

php artisan make:model Todo -all

別のオプション

-c、-- controllerモデルの新しいコントローラーを作成します

-f、--factory モデルの新しいファクトリを作成します

--force モデルがすでに存在する場合でもクラスを作成します

-m、-- migrationモデルの新しい移行ファイルを作成します

-s、-seed モデルの新しいシーダーファイルを作成します

-p、-pivot 生成されたモデルがカスタムの中間テーブルモデルである必要があるかどうかを示します

-r、--resource 生成されたコントローラーがリソースコントローラーである必要があるかどうかを示します

さらにヘルプが必要な場合

php artisan make:model Todo -help

初心者が助けを得ることを願っています。


1
これはいいですね
user3444748

7
php artisan make:model PurchaseRequest -crm

結果は

Model created successfully.
Created Migration: 2018_11_11_011541_create_purchase_requests_table
Controller created successfully.

-mcrの代わりに-crmを使用してください


4

Laravel 5.4使用できます

 php artisan make:model --migration --controller --resource Test

これにより、1)モデル2)デフォルトのリソース機能を持つコントローラー3)移行ファイルが作成されます

そして答えを得た

モデルが正常に作成されました。

作成された移行:2018_04_30_055346_create_tests_table

コントローラが正常に作成されました。



3

モード、リソース付きコントローラーを作成するには、次のようにCMDと入力します。

 php artisan make:model Todo -mcr

または、次のように入力して確認できます

php artisan help make:model

あなたはすべてのアイデアを得ることができます


2

すべてを作成するには3:テーブルのモデル、コントローラー、移行スキーマ

コンソールに書き込みます: php artisan make:model NameOfYourModel -mcr



0

--resourceフラグを追加する必要はありません。次のように入力するだけで、laravelが目的のリソース全体を作成します

 php artisan make:controller TodoController --model=todo

0

私が今までどのようにしていたか:

php artisan make:model Customer
php artisan make:controller CustomersController --resource

どうやら、より速い方法があります:

php artisan make:controller CustomersController --model=Customer

0

端末でこのコマンドを試してください

php artisan make:model Todo -mcr

出力とモデルの下に、リソースと移行ファイルを持つコントローラーが作成されます...

Model created successfully.
Created Migration: 2019_12_25_105305_create_todos_table
Controller created successfully.

お時間をいただきありがとうございます@MD Masud、あなたの親切な情報については、この答えはすでに与えられています。
アルン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.