mp3063 / mail-activation
提供易于使用的基于邮件激活的Laravel认证!
v5.5.1
2017-04-24 12:12 UTC
Requires
- php: >=5.5.9
- laravel/framework: 5.5.*
README
对于Laravel 5.4,使用版本5.4.2
准备
在.env文件中添加您的凭证,例如
DB_HOST=localhost DB_DATABASE=test_mail_activation DB_USERNAME=root DB_PASSWORD= MAIL_DRIVER=smtp MAIL_HOST=mailtrap.io MAIL_PORT=2525 MAIL_USERNAME=your_username MAIL_PASSWORD=your_password MAIL_ENCRYPTION=null
在config/mail.php中添加您的邮件和姓名
'from' => ['address' => 'yourmail@123.com', 'name' => 'Your Name'],
在app/User.php文件(模型)中向$fillable数组添加两个更多列,如下所示
protected $fillable = [ 'name', 'email', 'password', 'code', 'active' ];
这将安装所有必要的视图到资源文件夹。运行artisan命令
php artisan make:auth
确保从routes/web.php中删除以下行或仅将其注释掉,因为包中的routes.php文件将覆盖所有必要的认证路由。这基本上是Laravel中的同一文件(更改了3个路由以覆盖Laravel方法)
Auth::routes();
您的routes/web.php文件应如下所示
<?php Route::get('/', function () { return view('welcome'); }); //Auth::routes(); Route::get('/home', 'HomeController@index');
安装
使用以下命令通过composer要求此包
composer require mp3063/mail-activation
在config/app.php文件中将此行添加到ServiceProvider数组中
mp3063\LaravelMailActivation\LaravelMailActivationServiceProvider::class,
运行
php artisan vendor:publish
这将复制数据库/migrations中的迁移文件,并激活.resources/emails/auth中的blade.php文件
运行
php artisan migrate
#####如果您的应用程序正在运行MySQL v5.7.7及以上版本,则无需进行下一步。如果您遇到此错误
[Illuminate\Database\QueryException] SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table users add unique users_email_unique(email))
#####您需要在AppServiceProvider.php文件中执行此操作,并在boot方法中设置默认字符串长度
use Illuminate\Support\Facades\Schema; public function boot() { Schema::defaultStringLength(191); }
结束
如果您完成了所有这些步骤,那么您应该已经有了所有视图和路由,为邮件激活做好了准备!只需启动您的服务器并享受!所有由Laravel创建的功能和路由都得到了保留!