如何在 Laravel(PHP 工匠)中删除 Auth
Posted
技术标签:
【中文标题】如何在 Laravel(PHP 工匠)中删除 Auth【英文标题】:How to remove Auth in Laravel (PHP artisan) 【发布时间】:2017-06-10 20:54:25 【问题描述】:使用这个命令php artisan make:auth
我得到了所有的auth 东西,但我想知道如何删除它,或者只是如何重新初始化。
我已经删除了所有创建的文件,但是当我重新运行命令时,这不会再次创建 mysql 用户表
【问题讨论】:
投反对票后可能是一些cmets。只是为了了解我做错了什么。 我不知道你为什么得到这么多反对票,你的问题很有趣。赞成。 出于同样的原因也投了赞成票。 【参考方案1】:查看make:auth
command source code 以了解此命令添加或更改的确切文件并将更改还原回来。
如您所见,您应该删除一些视图和几个控制器。
auth/login.blade.php
auth/register.blade.php
auth/passwords/email.blade.php
auth/passwords/reset.blade.php
layouts/app.blade.php
home.blade.php
【讨论】:
我已经删除了所有创建的文件,但是当我重新运行命令时,这不会再次创建 mysql 用户表。 @Vixed 那是因为这个命令不会创建任何表。 Laravel 具有开箱即用的users
表迁移功能。如果已删除所有表,请删除migrations
表并运行php artisan migrate
命令重新创建users
表。
刚刚完成,但仍然没有。我尝试了所有我知道的,但没有。
您运行php artisan migrate
命令了吗?它的输出是什么?
看来您没有删除migrations
表。【参考方案2】:
您需要从数据库中删除用户表。还要从迁移表中删除迁移条目。
而不是从路由文件夹中的web.php
文件中注释身份验证的路由代码。喜欢
Auth::routes();
还可以从 HomeController __construct()
函数中评论 middleware
。
$this->middleware('auth');
【讨论】:
中间件控制器和文件夹?你是认真的吗?【参考方案3】:只需运行此代码即可解决您的问题php artisan auth:clear-reset
【讨论】:
【参考方案4】:试试这个
php artisan view:clear
这将自动为您清除已编译的视图
【讨论】:
此命令只会清除视图缓存,与移除授权无关!【参考方案5】:检查 make:auth 命令的源代码以了解它创建的文件或更改。
您需要删除这些文件
-
auth/login.blade.php
auth/register.blade.php
auth/passwords/email.blade.php
auth/passwords/reset.blade.php
布局/app.blade.php
home.blade.php
完成后
进入 routes/web.php,删除 make:auth 命令创建的路由。去掉这两行,你的项目就可以正常运行了。
Auth::routes();
Route::get('/home', 'HomeController@index');
【讨论】:
同时从 app/http/controller 中删除 auth 目录【参考方案6】:删除
resources/views/auth
resources/views/home.blade.php
resources/views/layouts
(可选,如果你不想要的话。它不会影响你的代码)
然后删除
Auth::routes();
Route::get('/home','HomeController@index')->name('home');
然后将HomeController.php中的函数编辑为
public function index()
return view('welcome');
为了完美起见
运行php artisan migrate:refresh
【讨论】:
【参考方案7】:您将需要删除 3 个文件
1. delete dossier auth
2. layouts/app.blade.php
3. home.blade.php
【讨论】:
以上是关于如何在 Laravel(PHP 工匠)中删除 Auth的主要内容,如果未能解决你的问题,请参考以下文章