Laravel 5.4 crée le modèle, le contrôleur et la migration en une seule commande artisanale


150

Je peux créer un modèle et un contrôleur de ressources (lié au modèle) avec la commande suivante

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

Je souhaite également créer une migration avec la commande ci-dessus, est-ce possible?


Je pense que dans ce cas, le drapeau --resource n'est pas nécessaire. - le modèle suffit.
Luca Reghellin

Réponses:


411

Vous pouvez le faire si vous partez du modèle

php artisan make:model Todo -mcr

si vous exécutez, php artisan make:model --helpvous pouvez voir toutes les options disponibles

-m, --migration Crée un nouveau fichier de migration pour le modèle.
-c, --controller Crée un nouveau contrôleur pour le modèle.
-r, --resource Indique si le contrôleur généré doit être un contrôleur de ressources

Mettre à jour

Comme mentionné dans les commentaires de @arun dans les versions plus récentes de laravel> 5.6, il est possible d'exécuter la commande suivante:

php artisan make:model Todo -a

-a, --all Génère un contrôleur de migration, d'usine et de ressources pour le modèle


32
Maintenant, nous pouvons utiliser php artisan make:model Todo -apour créer un modèle, une migration, un contrôleur de ressources etfactory
arun

pourquoi, par exemple, la méthode showparam est l'objet de modèle lors de la création avec make:model -mcrvs make:controller --resourcela méthode showparam est$id
Cr1xus

@ Cr1xus Parce que dans la deuxième commande, vous devez spécifier le modèle de ressource que vous souhaitez utiliser, dans la première commande, l'indicateur -r connaît le modèle correct parce que nous venons de créer ce modèle.
Christophvh

lorsque j'utilise cette commande, pourquoi ne crée-t-elle pas ModelResource.php dans le répertoire app / http / resources?
tyasird

@tyasird Resource signifie que vos contrôleurs seront préchargés avec un modèle auto-injecté. Cela ne signifie pas les ressources api
Christophvh

21

Vous pouvez créer modèle + migration + contrôleur , le tout sur une seule ligne, à l'aide de cette commande:

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

Version courte: php artisan make:model -mc test

Production :-

Modèle créé avec succès.

Migration créée: 2018_03_10_002331_create_tests_table

Le contrôleur a été créé avec succès.


Si vous devez effectuer toutes les opérations CRUD dans le contrôleur, utilisez cette commande:

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

Version courte: php artisan make:model -mc test --resource


1
veuillez utiliser php artisan make: model --migration --controller --resource Test.
Affan

bro je crée d'abord et puis poste ceci. en fait, j'utilise votre commande donnée et j'ajoute --resource à la fin et ce travail s'il vous plaît vérifier à partir de vous fin. J'utilise Laravel 5.4. la version inférieure de laravel peut ne pas prendre en charge. @Udhav
Affan

J'ai installé le nouveau Laravel, votre code de suggestion fonctionne, merci @Affan :)
Udhav Sarvaiya

15

Vous pouvez le faire avec la commande suivante:

php artisan make:model post -mcr

Bref :

-m, pour créer la migration

-c pour créer un contrôleur

-r pour spécifier que le contrôleur a la ressource


Op avait des ressources dans sa question, donc votre réponse est incomplète.
Appel Landon le

8

Actualisé

Laravel 6 À travers le modèle

Pour générer une migration, un semoir, une fabrique et un contrôleur de ressources pour le modèle

php artisan make:model Todo -a

Ou

php artisan make:model Todo -all

Autres options

-c, --controller Créer un nouveau contrôleur pour le modèle

-f, --factory Créer une nouvelle fabrique pour le modèle

--force Créer la classe même si le modèle existe déjà

-m, --migration Créer un nouveau fichier de migration pour le modèle

-s, --seed Créer un nouveau fichier de semence pour le modèle

-p, --pivot Indique si le modèle généré doit être un modèle de table intermédiaire personnalisé

-r, --resource Indique si le contrôleur généré doit être un contrôleur de ressources

Pour plus d'aide

php artisan make:model Todo -help

J'espère que les débutants auront de l'aide.


1
C'est gentil
user3444748

7
php artisan make:model PurchaseRequest -crm

Le résultat est

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

Utilisez simplement -crm au lieu de -mcr


4

Laravel 5.4 Vous pouvez utiliser

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

Cela créera 1) contrôleur modèle 2) avec la fonction de ressource par défaut 3) fichier de migration

Et j'ai une réponse

Modèle créé avec succès.

Migration créée: 2018_04_30_055346_create_tests_table

Le contrôleur a été créé avec succès.


4

Nous pouvons utiliser php artisan make:model Todo -apour créer un modèle, une migration, un contrôleur de ressources et une usine


3

Pour créer le mode, les contrôleurs avec des ressources, vous pouvez taper CMD comme suit:

 php artisan make:model Todo -mcr

ou vous pouvez vérifier en tapant

php artisan help make:model

où vous pouvez trouver toutes les idées


2

Pour faire les 3: modèle, contrôleur et schéma de migration de la table

écrivez dans votre console: php artisan make:model NameOfYourModel -mcr


2

Vous pouvez utiliser -m -c -r pour effectuer la migration, le modèle et le contrôleur.

php artisan make:model Post -m -c -r

0

Vous n'avez pas besoin d'ajouter le drapeau --resource, tapez simplement ce qui suit et laravel créera toutes les ressources souhaitées

 php artisan make:controller TodoController --model=todo

0

Comment je le faisais jusqu'à présent:

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

Apparemment, il existe un moyen plus rapide:

php artisan make:controller CustomersController --model=Customer

0

Essayez simplement cette commande sur votre terminal

php artisan make:model Todo -mcr

Sous la sortie et votre modèle, le contrôleur avec fichier de ressources et de migration créera ...

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

Merci pour votre temps @MD Masud, Pour votre aimable information, cette réponse est déjà donnée.
arun
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.