saloum45 / controllergenerate
😊Un package Laravel qui facilite la génération dynamique de contrôleurs,migrations et de routes dans une application Laravel. a Laravel package that makes it easy to dynamically generate controllers, migrations and routes in a Laravel application.😊
Installs: 172
Dependents: 0
Suggesters: 0
Security: 0
Stars: 2
Watchers: 1
Forks: 1
Open Issues: 0
pkg:composer/saloum45/controllergenerate
Requires
- php: >=7.2
- illuminate/support: *
- dev-master
- v3.0.5
- v3.0.4
- v3.0.3
- v3.0.2
- v3.0.1
- v3.0.0
- v2.3.8
- v2.3.7
- v2.3.6
- v2.3.5
- v2.3.4
- v2.3.3
- v2.3.2
- v2.3.1
- v2.3.0
- v2.2.9
- v2.2.8
- v2.2.7
- v2.2.6
- v2.2.5
- v2.2.4
- v2.2.3
- v2.2.2
- v2.2.1
- v2.2.0
- v2.1.9
- v2.1.8
- v2.1.7
- v2.1.6
- v2.1.5
- v2.1.4
- v2.1.3
- v2.1.2
- v2.1.1
- v2.0.9
- v2.0.8
- v2.0.7
- v2.0.6
- v2.0.5
- v2.0.4
- v2.0.3
- v2.0.2
- v2.0.1
- v2.0.0
- v1.1.4
- v1.1.3
- v1.1.2
- v1.1.1
- dev-salem
- dev-moohamad
This package is auto-updated.
Last update: 2025-10-05 15:48:20 UTC
README
Saloum45/ControllerGenerate est un package Laravel qui facilite la génération dynamique de contrôleurs, migrations, routes et relations dans une application Laravel(API).
Tuto complet :
Comment ça marche 👉🏽😇
-
Il faut d’abord créer les modèles.
- Respectez le PascalCase pour le nom des modèles, ex :
EtudiantClasse
. - Le package se base sur les modèles pour générer les contrôleurs, migrations, routes et relations.
- Respectez le PascalCase pour le nom des modèles, ex :
-
Pour les clés étrangères, respectez cette nomenclature :
id_nom_de_table
, exemple :id_classe
.
Installation
Ajoutez le package à votre projet Laravel via Composer :
composer require saloum45/controllergenerate
Configuration :
Une fois installé package crée automatiquement les commandes nécessaires, que vous pouvez exécuter en suivant ces étapes.
Commandes disponibles
1️⃣ Générer les contrôleurs
php artisan generate:controllers
- Crée des contrôleurs pour tous les modèles.
php artisan generate:controllers NomModel
-
Crée le contrôleur pour un modèle spécifique.
-
Chaque contrôleur contient des méthodes CRUD, un endpoint
getFormDetails
pour les clés étrangères, et les méthodeslogin
/logout
pour le modèleUser
.
2️⃣ Générer les routes
php artisan generate:routes
- Crée des routes API pour tous les contrôleurs.
php artisan generate:routes NomModel
-
Crée des routes API pour un contrôleur spécifique.
-
Si un fichier de routes existe, les nouvelles routes sont ajoutées à la fin sans écraser le fichier existant.
3️⃣ Générer les migrations
php artisan generate:migrations
- Crée les migrations à partir des attributs
$fillable
des modèles.
php artisan generate:migrations NomModel
-
Crée la migration d'un modèle spécifique.
-
Les migrations sont générées dans le bon ordre en fonction des dépendances des clés étrangères. Si une migration existe déjà pour un modèle, elle est écrasée pour éviter les duplications.
4️⃣ Générer les relations (belongsTo et hasMany) entre modèles
php artisan generate:relations
- Crée les relations de tous les modéles.
php artisan generate:relations NomModel
- Crée les relations pour un modèle spécifique.
5️⃣ Commande ultime : tout générer
php artisan generate:all
- Regroupe toutes les commandes ci-dessus en une seule pour tous les modèles.
php artisan generate:all NomModel
- Regroupe toutes les commandes ci-dessus en une seule pour un modèle spécifique.
6️⃣ Exécuter les migrations
php artisan migrate
Résultat attendu
- Controllers : créés dans
app/Http/Controllers
avec méthodes CRUD. - Migrations : créées dans
database/migrations
dans le bon ordre avec clés étrangères. - Routes : ajoutées à
routes/api.php
. - Relations : ajoutées automatiquement dans les modèles (belongsTo et hasMany).
- Bonus : gestion spéciale pour le modèle
User
avec endpointslogin
/logout
avec géneration du token.
Bon code 🧑🏽💻 Salem DEV 👈🏽 fait avec beaucoup de ❤️ et ☕️
ControllerGenerate Laravel
Saloum45/ControllerGenerate is a Laravel package that makes it easy to dynamically generate controllers, migrations, routes, and relations in a Laravel (API) application.
Full tutorial:
How it works 👉🏽😇
-
You must first create the models.
- Use PascalCase for model names, e.g.,
StudentClass
. - The package relies on models to generate controllers, migrations, routes, and relations.
- Use PascalCase for model names, e.g.,
-
For foreign keys, follow this naming convention:
id_table_name
, e.g.,id_class
.
Installation
Add the package to your Laravel project via Composer:
composer require saloum45/controllergenerate
Configuration:
Once installed, the package automatically registers the necessary commands, which you can execute as shown below.
Available Commands
1️⃣ Generate controllers
php artisan generate:controllers
- Creates controllers for all models.
php artisan generate:controllers ModelName
-
Creates a controller for a specific model.
-
Each controller contains CRUD methods, a
getFormDetails
endpoint for foreign keys, andlogin
/logout
methods for theUser
model.
2️⃣ Generate routes
php artisan generate:routes
- Creates API routes for all controllers.
php artisan generate:routes ModelName
-
Creates API routes for a specific controller.
-
If a routes file already exists, the new routes are added at the end without overwriting the existing file.
3️⃣ Generate migrations
php artisan generate:migrations
- Creates migrations based on the
$fillable
attributes of models.
php artisan generate:migrations ModelName
-
Creates the migration for a specific model.
-
Migrations are generated in the correct order based on foreign key dependencies. If a migration already exists for a model, it is overwritten to avoid duplicates.
4️⃣ Generate model relations (belongsTo and hasMany)
php artisan generate:relations
- Creates relations for all models.
php artisan generate:relations ModelName
- Creates relations for a specific model.
5️⃣ Ultimate command: generate everything
php artisan generate:all
- Runs all of the above commands for all models.
php artisan generate:all ModelName
- Runs all of the above commands for a specific model.
6️⃣ Run migrations
php artisan migrate
Expected result
- Controllers: created in
app/Http/Controllers
with CRUD methods. - Migrations: created in
database/migrations
in the correct order with foreign keys. - Routes: added to
routes/api.php
. - Relations: automatically added to models (belongsTo and hasMany).
- Bonus: special handling for the
User
model withlogin
/logout
endpoints and token generation.