Laravel is robust framework of php which provides rapid development and security for low and high level projects. It have many features like Laravel Components, Validation, eloquent, migrations, artisnan security etc.
Let’s have look artisan commands of laravel artisan.
There is a command which gives you list of all available commands in specific version of laravel.
php artisan list
This will output as below in laravel 8.
clear-compiled Remove the compiled class file db Start a new database CLI session down Put the application into maintenance / demo mode env Display the current framework environment help Display help for a command inspire Display an inspiring quote list List commands migrate Run the database migrations optimize Cache the framework bootstrap files serve Serve the application on the PHP development server test Run the application tests tinker Interact with your application up Bring the application out of maintenance mode auth auth:clear-resets Flush expired password reset tokens cache cache:clear Flush the application cache cache:forget Remove an item from the cache cache:table Create a migration for the cache database table config config:cache Create a cache file for faster configuration loading config:clear Remove the configuration cache file db db:seed Seed the database with records db:wipe Drop all tables, views, and types event event:cache Discover and cache the application's events and listeners event:clear Clear all cached events and listeners event:generate Generate the missing events and listeners based on registration event:list List the application's events and listeners key key:generate Set the application key make make:cast Create a new custom Eloquent cast class make:channel Create a new channel class make:command Create a new Artisan command make:component Create a new view component class make:controller Create a new controller class make:event Create a new event class make:exception Create a new custom exception class make:factory Create a new model factory make:job Create a new job class make:listener Create a new event listener class make:mail Create a new email class make:middleware Create a new middleware class make:migration Create a new migration file make:model Create a new Eloquent model class make:notification Create a new notification class make:observer Create a new observer class make:policy Create a new policy class make:provider Create a new service provider class make:request Create a new form request class make:resource Create a new resource make:rule Create a new validation rule make:seeder Create a new seeder class make:test Create a new test class migrate migrate:fresh Drop all tables and re-run all migrations migrate:install Create the migration repository migrate:refresh Reset and re-run all migrations migrate:reset Rollback all database migrations migrate:rollback Rollback the last database migration migrate:status Show the status of each migration model model:prune Prune models that are no longer needed notifications notifications:table Create a migration for the notifications table optimize optimize:clear Remove the cached bootstrap files package package:discover Rebuild the cached package manifest queue queue:batches-table Create a migration for the batches database table queue:clear Delete all of the jobs from the specified queue queue:failed List all of the failed queue jobs queue:failed-table Create a migration for the failed queue jobs database table queue:flush Flush all of the failed queue jobs queue:forget Delete a failed queue job queue:listen Listen to a given queue queue:monitor Monitor the size of the specified queues queue:prune-batches Prune stale entries from the batches database queue:prune-failed Prune stale entries from the failed jobs table queue:restart Restart queue worker daemons after their current job queue:retry Retry a failed queue job queue:retry-batch Retry the failed jobs for a batch queue:table Create a migration for the queue jobs database table queue:work Start processing jobs on the queue as a daemon route route:cache Create a route cache file for faster route registration route:clear Remove the route cache file route:list List all registered routes sail sail:install Install Laravel Sail's default Docker Compose file sail:publish Publish the Laravel Sail Docker files schedule schedule:list List the scheduled commands schedule:run Run the scheduled commands schedule:test Run a scheduled command schedule:work Start the schedule worker schema schema:dump Dump the given database schema session session:table Create a migration for the session database table storage storage:link Create the symbolic links configured for the application stub stub:publish Publish all stubs that are available for customization vendor vendor:publish Publish any publishable assets from vendor packages view view:cache Compile all of the application's Blade templates view:clear Clear all compiled view files
Most common used artisan commands are as follow:
php artisan make:xyz for example php artisan make:controller, php artisan make:model, php artisan make:Laravel Components etc.
1. php artisan make:controller
This command create a new controller file in location app\Http\controllers.
php artisan make:controller PostController
Optional parameters :
--resource, --api, --invokable,--resource,--parent
–resource parameter : The controller will contain a method for each of the available resource operations – index(), create(), store(), show(), edit(), update(), destroy().
–api parameter: Same as –resource except edit().
You can also create controller in Subfolder.
php artisan make:controller api\PostController
php artisan make:model
Create a model, this will create model in app\Model folder
php artisan make:model Post
Optional Parameters: –migration or -m, –controller or -c, –resource or -r, –mcr
–migration or -m : Creates a migration file for model.
–controller or -m : Creates a controller file for model.
–resource or -r : Creates a resource for model.
–mcr : Create controller, migration, model, resource using one command
php artisan make:migration
This will generate migration file.
php artisan make:migration create_posts_table
php artisan make:seeder
Generates a new database seeder class.
php artisan make:seeder PostTableSeeder
php artisan make:middleware
Generates a new middleware class.
php artisan make:middleware CheckJson
php artisan make:command
Generates a new command class.
php artisan make:middleware PostAdd
One thought on “Laravel artisan command to generate controllers, Model, Components and Migrations”