I am trying to run this command in laravel 5.2 but it\'s not working.
php artisan make:auth
and prompts with these statements.
<
Checkout your laravel/framework version on your composer.json file,
If it's either "^6.0" or higher than "^5.9",
you have to use php artisan ui:auth
instead of php artisan make:auth
.
Before using that you have to install new dependencies by calling
composer require laravel/ui --dev
in the current directory.
In short and precise, all you need to do is
composer require laravel/ui --dev
php artisan ui vue --auth
and then the migrate php artisan migrate
.
Just for an overview of Laravel Authentication
Laravel Authentication facilities comes with Guard and Providers, Guards define how users are authenticated for each request whereas Providers define how users are retrieved from you persistent storage.
Database Consideration - By default Laravel includes an App\User Eloquent Model in your app directory.
Auth Namespace - App\Http\Controllers\Auth
Controllers - RegisterController, LoginController, ForgotPasswordController and ResetPasswordController, all names are meaningful and easy to understand!
Routing - Laravel/ui package provides a quick way to scaffold all the routes and views you need for authentication using a few simple commands (as mentioned in the start instead of make:auth).
You can disable any newly created controller, e. g. RegisterController and modify your route declaration like, Auth::routes(['register' => false]); For further detail please look into the Laravel Documentation.
Update for Laravel 6
Now that Laravel 6 is released you need to install laravel/ui
.
composer require laravel/ui --dev
php artisan ui vue --auth
You can change vue
with react
if you use React in your project (see Using React).
And then you need to perform the migrations and compile the frontend
php artisan migrate
npm install && npm run dev
Source : Laravel Documentation for authentication
Want to get started fast? Install the laravel/ui Composer package and run php artisan ui vue --auth in a fresh Laravel application. After migrating your database, navigate your browser to http://your-app.test/register or any other URL that is assigned to your application. These commands will take care of scaffolding your entire authentication system!
Note: That's only if you want to use scaffolding, you can use the default User model and the Eloquent authentication driver.
For Laravel >=6
composer require laravel/ui
php artisan ui vue --auth
php artisan migrate
Reference : Laravel Documentation for authentication
it looks you are not using Laravel 5.2, these are the available make commands in L5.2 and you are missing more than just the make:auth command
make:auth Scaffold basic login and registration views and routes
make:console Create a new Artisan command
make:controller Create a new controller class
make:entity Create a new entity.
make:event Create a new event class
make:job Create a new job class
make:listener Create a new event listener class
make:middleware Create a new middleware class
make:migration Create a new migration file
make:model Create a new Eloquent model class
make:policy Create a new policy class
make:presenter Create a new presenter.
make:provider Create a new service provider class
make:repository Create a new repository.
make:request Create a new form request class
make:seeder Create a new seeder class
make:test Create a new test class
make:transformer Create a new transformer.
Be sure you have this dependency in your composer.json file
"laravel/framework": "5.2.*",
Then run
composer update
Update Nov 18th: Taylor just released Laravel Installer 2.3.0 added a new "--auth" flag to create a new project with the authentication scaffolding installed!
To update laravel installer read here
It means we can do:
laravel new project --auth
cd project
php artisan migrate
npm install
npm run dev
Which is a shorthand of commands in the Section B. Also read more here
Step 1 - First do this:
laravel new project
cd project
composer require laravel/ui --dev
Note: Laravel UI Composer package is a new first-party package that extracts the UI portion of a Laravel project ( frontend scaffolding typically provided with previous releases of Laravel ) into a separate laravel/ui package. The separate package enables the Laravel team to update, develop and version UI scaffolding package separately from the primary framework and the main Laravel codebase.
Step 2 - Then do this:
php artisan ui bootstrap --auth
php artisan migrate
or
php artisan ui vue --auth
php artisan migrate
instead of
php artisan make:auth ( which works for Laravel 5.8 and older versions )
More Options here
php artisan ui:auth
The above command will generate only the auth routes, a HomeController, auth views, and a app.blade.php layout file.
You can also generate the views only with:
php artisan ui:auth --views
The console command will prompt you to confirm overwriting auth files if you've already run the command before.
// Generate basic scaffolding...
php artisan ui vue
php artisan ui react
and also:
// Generate login / registration scaffolding...
php artisan ui vue --auth
php artisan ui react --auth
To see differences read this article
Step 3 - Then you need to do:
npm install
npm run dev
If you using >5 version of laravel then you will use.
composer require laravel/ui --dev **or** composer require laravel/ui
And then
php artisan ui:auth