davidecariola/scaffolding-fortify-bootstrap

自动创建Laravel 8脚手架,包含Laravel/Fortify和Bootstrap 5

dev-main 2021-09-27 12:10 UTC

This package is auto-updated.

Last update: 2024-09-28 13:42:18 UTC


README

在Packagist上的最新版本

此包旨在让开发者专注于真正重要的代码。安装Laravel Fortify和Bootstrap 5可能需要很长时间和多个步骤,而使用此包可以简化为一个简单的代码行。只需安装Scaffolding Fortify Bootstrap,就可以立即开始编码!

具体来说,它会

  • 安装Laravel/Fortify包
  • 安装Laravel/Socialite包
  • 安装Bootstrap 5, popperjs/core
  • 更新resources/app.js和resources/app.css
  • 运行npm install && npm run dev
  • 在resources/views中创建components文件夹,包含布局文件
  • 在resources/views中创建auth文件夹,包含登录、注册、忘记密码和重置密码文件
  • 每个与用户相关的视图都将已经有一个完整的表单,包括csrf令牌、方法、操作、验证错误和会话消息
  • 创建一个名为SocialiteController的控制器,用于管理Google认证

要求

  • PHP >= 8.0.0
  • Laravel >= 8.0.0

安装

要开始,请使用Composer安装包

composer require davidecariola/scaffolding-fortify-bootstrap

接下来,运行install artisan命令来发布脚手架

php artisan sfb:install

发布Laravel Fortify

php artisan vendor:publish --provider="Laravel\Fortify\FortifyServiceProvider"

在config/app.php的providers[]数组中添加

App\Providers\FortifyServiceProvider::class,
Laravel\Socialite\SocialiteServiceProvider::class,

在config/app.php的aliases[]数组中添加

'Socialite' => Laravel\Socialite\Facades\Socialite::class,

确保在config\fortify.php的features[]中启用了以下内容

Features::registration(),
Features::resetPasswords(),
Features::updateProfileInformation(),
Features::updatePasswords(),
Features::twoFactorAuthentication([
        'confirmPassword' => true,
]),

在app\Providers\FortifyServiceProvider的boot()函数中添加

Fortify::loginView(function () {
        return view('auth.login');
});

Fortify::registerView(function () {
        return view('auth.register');
});

Fortify::requestPasswordResetLinkView(function () {
        return view('auth.forgot-password');
});

Fortify::resetPasswordView(function ($request) {
        return view('auth.reset-password', ['request' => $request]);
});

记得在app\Providers\RouteServiceProvider中更新const HOME

public const HOME = '/';

在.env文件中,链接您的smtp服务(例如Mailtrap)并更新发件人。

在app\config\services.php中,更新google[]以包含您的身份信息。

在.env文件中,插入与services.php中相同的Google密钥

GOOGLE_CLIENT_ID=YOUR_GOOGLE_CLIENT_ID
GOOGLE_CLIENT_SECRET=YOUR_GOOGLE_CLIENT_SECRET
GOOGLE_REDIRECT=https://:8000/callback

创建数据库后,创建一个新的迁移,在users表中添加google_id字段

php artisan make:migration add_google_id_column_to_users_table

然后,在迁移中将'google_id'设置为字符串

在app\Models\User中,在fillable[]中添加'google_id'

当你准备好了

php artisan migrate

创造一些令人惊叹的东西吧!!

用法

只需安装此包,就可以无忧无虑地开始编码!

下一步是什么?

我将涵盖Laravel/Fortify的所有可能性,例如TwoFactorAuthentication。

许可

此包是开源软件,许可协议为MIT许可证

感谢

感谢Leonardo De Candia和Roberto Russo的出色支持!