php artisan make:auth 命令未定义
Posted
技术标签:
【中文标题】php artisan make:auth 命令未定义【英文标题】:Php artisan make:auth command is not defined 【发布时间】:2016-04-05 09:06:17 【问题描述】:我正在尝试在 Laravel 5.2 中运行此命令,但它不起作用:
php artisan make:auth
并用这些语句提示:
[InvalidArgumentException]
Command "make:auth" is not defined
Did you mean one of these?
make:test
make:request
make:migration
make:seeder
make:middleware
make:controller
make:provider
make:policy
make:event
make:console
make:job
make:listener
make:model
make:command
【问题讨论】:
它们与使用 Illuminate\Contracts\Auth\Authenticator 完全不同;在 AuthenticateUser.php.as 我提到我正在使用 laravel 5.2 你试过composer update
吗?
是的,就在昨晚..
@YauheniPrakopchyk 你使用 laravel 5.2 吗?
您的现有代码一定有问题,您必须尝试全新安装。 laravel.com/docs/master/installation 。可能您会理解确切的问题。
【参考方案1】:
对于 Laravel >=6
composer require laravel/ui
php artisan ui vue --auth
php artisan migrate
参考:Laravel Documentation for authentication
看起来你没有使用 Laravel 5.2,这些是 L5.2 中可用的 make 命令,你缺少的不仅仅是 make:auth 命令
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.
确保您的 composer.json 文件中有此依赖项
"laravel/framework": "5.2.*",
然后运行
composer update
【讨论】:
我的错误。对不起。我没有检查我的 composr.json 文件。 这个答案需要更新 - Laravel 目前是 7.0。 composer 需要 laravel/ui 不适用于我 使用 Laravel 8.5。谢谢。【参考方案2】:Laravel 8 更新
laravel/ui
仍然有效,但被视为旧版。考虑使用Laravel Breeze 或Laravel Jetstream。
Laravel 6 更新
现在你需要安装 Laravel 6 is released laravel/ui
。
composer require laravel/ui --dev
php artisan ui vue --auth
如果您在项目中使用 React 或 Bootstrap,您可以将 vue
更改为 react
或 bootstrap
(请参阅 Using React)。
然后你需要执行迁移并编译前端
php artisan migrate
npm install && npm run dev
来源:Laravel Documentation for authentication
想快速入门吗?安装 laravel/ui Composer 包和 在新的 Laravel 应用程序中运行 php artisan ui vue --auth。后 迁移你的数据库,浏览你的浏览器到 http://your-app.test/register 或分配给的任何其他 URL 你的申请。这些命令将负责搭建您的脚手架 整个认证系统!
注意:只有当你想使用脚手架时,你才能使用默认的 User 模型和 Eloquent 身份验证驱动程序。
【讨论】:
谢谢。如果我不想要 Vue,只想要 auth 脚手架怎么办? @AmirAsyraf 我建议你自己写,auth
中间件是原生的,你只需要写路由。
这应该是公认的答案。添加 laravel/ui 后,ui:auth
命令可用。
谢谢。如果我不想要 Vue,只想要 auth 脚手架怎么办?使用php artisan ui:auth
检查答案***.com/a/58449383/9978078
@Nino 你错过了引导参数。喜欢php artisan ui bootstrap --auth
【参考方案3】:
在 Laravel 6.0 中 make:auth 不再存在。 Read more here
A- 简写:
11 月 18 日更新: Taylor 刚刚发布的 Laravel Installer 2.3.0 添加了一个新的“--auth”标志来创建一个安装了身份验证脚手架的新项目!
更新 laravel 安装程序 read here
这意味着我们可以做到:
laravel new project --auth
cd project
php artisan migrate
npm install
npm run dev
这是 B 节中命令的简写。Also read more here
B - 详细信息:
按照这三个步骤
第 1 步 - 首先执行以下操作:
laravel new project
cd project
composer require laravel/ui --dev
注意: Laravel UI Composer 包是一个新的第一方包,它将 Laravel 项目的 UI 部分(通常由 Laravel 的早期版本提供的前端脚手架)提取到单独的 laravel/ui 包中。单独的包使 Laravel 团队能够独立于主框架和 Laravel 主代码库来更新、开发和版本化 UI 脚手架包。
第 2 步 - 然后执行以下操作:
php artisan ui bootstrap --auth
php artisan migrate
或
php artisan ui vue --auth
php artisan migrate
而不是
php artisan make:auth ( which works for Laravel 5.8 and older versions )
更多选项 here
php artisan ui:auth
上述命令将只生成 auth 路由、HomeController、auth 视图和 app.blade.php 布局文件。
您也可以只生成视图:
php artisan ui:auth --views
如果您之前已经运行过该命令,控制台命令将提示您确认覆盖身份验证文件。
// Generate basic scaffolding...
php artisan ui vue
php artisan ui react
还有:
// Generate login / registration scaffolding...
php artisan ui vue --auth
php artisan ui react --auth
查看差异 read this article
第 3 步 - 然后你需要做:
npm install
npm run dev
【讨论】:
您基本上只是在复制一周前@Nino 的回答。【参考方案4】:在 Laravel 6 应用程序中,make:auth
命令不再存在。
Laravel UI 是一个新的第一方包,它将 Laravel 项目的 UI 部分提取到一个单独的 laravel/ui 包中。单独的包使 Laravel 团队能够独立于 Laravel 主代码库对 UI 包进行迭代。
您可以通过 composer 安装 laravel/ui
包:
composer require laravel/ui
ui:auth
命令
除了新的 ui 命令之外,laravel/ui
包还附带了另一个用于生成身份验证脚手架的命令:
php artisan ui:auth
如果您运行ui:auth
命令,它将生成身份验证路由、HomeController、身份验证视图和app.blade.php 布局文件。
如果您想单独生成视图,请输入以下命令:
php artisan ui:auth --views
如果要同时生成auth脚手架:
php artisan ui vue --auth
php artisan ui react --auth
php artisan ui vue --auth
命令将创建您需要进行身份验证的所有视图并将它们放在resources/views/auth
目录中
ui
命令还将创建一个resources/views/layouts
目录,其中包含应用程序的基本布局。所有这些视图都使用 Bootstrap CSS 框架,但您可以随意自定义它们。
更多细节如下。 laravel-news & documentation
您只需遵循这两个步骤。
composer require laravel/ui
php artisan ui:auth
【讨论】:
【参考方案5】:简而言之,您需要做的就是
composer require laravel/ui --dev
php artisan ui vue --auth
,然后是 migrate php artisan migrate
。
只是对 Laravel 身份验证的概述
Laravel 身份验证工具带有 Guard 和 Providers,Guards 定义用户如何为每个请求进行身份验证,而 Providers 定义如何从您的持久存储中检索用户。
数据库注意事项 - 默认情况下,Laravel 在您的应用目录中包含一个 App\User Eloquent 模型。
Auth 命名空间 - App\Http\Controllers\Auth
Controllers - RegisterController、LoginController、ForgotPasswordController 和 ResetPasswordController,所有名称都有意义且易于理解!
Routing - Laravel/ui 包提供了一种快速的方法,可以使用一些简单的命令(如开头所述,而不是 make:auth )。
您可以禁用任何新创建的控制器,例如。 G。 RegisterController 并修改您的路由声明,例如 Auth::routes(['register' => false]); 更多详情请查看Laravel Documentation。
【讨论】:
【参考方案6】:如果您使用 >5 版本的 laravel,那么您将使用。
composer require laravel/ui --dev **or** composer require laravel/ui
然后
php artisan ui:auth
【讨论】:
【参考方案7】:这两个命令在我的项目中对我有用
composer require laravel/ui --dev
然后
php artisan ui:auth
【讨论】:
【参考方案8】:在您的 composer.json 文件中检查您的 laravel/framework 版本,
如果它是“^6.0”或高于“^5.9”,
您必须使用php artisan ui:auth
而不是php artisan make:auth
。
在使用之前,您必须通过调用安装新的依赖项
composer require laravel/ui --dev
在当前目录中。
【讨论】:
【参考方案9】:以下 CLI 命令通常用于设置 Laravel 6.x、7x、8.x 版本:
composer create-project --prefer-dist laravel/laravel blade-example-app
cd blade-example-app
composer require laravel/ui
php artisan ui bootstrap --auth
npm install && npm run dev
php artisan migrate
php artisan serve
【讨论】:
koustav 请在您的答案中添加支持的 Laravel 版本。谢谢。 @Kamlesh Laravel 6.x、7x、8.x【参考方案10】:你可以使用 laravel/breeze
composer require laravel/breeze --dev
然后
php artisan breeze:install
然后
npm install
您可以查看documentation
【讨论】:
以上是关于php artisan make:auth 命令未定义的主要内容,如果未能解决你的问题,请参考以下文章
命令“make:auth”未定义laravel 6 [重复]
使用php artisan app后的Laravel5.5:未找到名称类
php artisan route:list RuntimeException 会话存储未按请求设置
PhpStorm:运行 php artisan serve 未定义索引:REQUEST_URI [重复]