跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

Breeze怎么用_LaravelBreeze安装方法【详解】

Breeze 不是装完 composer require laravel/breeze --dev 就能用的,必须执行 php artisan breeze:install 才生成路由、视图和控制器;跳过这步,/login 一定 404。 直接上结论:Breeze 不是装完
composer require laravel/breeze --dev
就能用的,必须执行
php artisan breeze:install
才生成路由、视图和控制器;跳过这步,
/login
一定 404。 为什么
composer require
后还必须跑
breeze:install
Breeze 的 Composer 包只注册 Artisan 命令、提供底层逻辑,不主动写任何文件到你的项目里。这是 Laravel 官方的显式控制设计——避免污染已有结构。
composer require laravel/breeze --dev
只把包放进
vendor/
,
php artisan route:list
里看不到任何 auth 路由
php artisan breeze:install
才真正:复制
resources/views/auth/
视图、注入
routes/auth.php
、修改
RouteServiceProvider
、发布 Tailwind 配置、写入
app/Http/Controllers/Auth/
如果你已手动写过
Auth::routes()
(比如从 Laravel UI 迁移过来),它会和 Breeze 的
routes/auth.php
冲突,导致部分路由失效或重复定义
php artisan breeze:install
参数选错的后果 参数决定生成什么、依赖什么、要不要编译,选错不是“重装就行”,而是立刻卡在构建或运行环节。
php artisan breeze:install blade
:最轻量,纯 SSR,表单 POST 提交,无需
npm run dev
也能访问
/login
php artisan breeze:install vue
或
react
:强制引入 Inertia、Ziggy、@inertiajs/*,必须
npm install && npm run dev
,否则页面空白 + 控制台报
Uncaught ReferenceError: inertia is not defined
php artisan breeze:install --dark
:只改 CSS 类和 JS 切换逻辑,但前提是你的
tailwind.config.js
已启用
darkMode: 'class'
,否则深色样式不生效 迁移失败的三个高频原因
php artisan migrate
报错,90% 不是 Breeze 问题,而是环境或结构没对齐。 Laravel 13.2.0 PHP中文网提供Laravel 13.2.0版本下载,Laravel框架 是基于 PHP 8.3+ 的高性能框架,官方推荐通过 Composer 安装。它内置 AI SDK、JSON:API Resources 及原生向量搜索,支持属性驱动开发与队列路由,大幅提升开发效率。相比旧版,13.2.0 优化了缓存 TTL 管理与实时通信,无需 Redis 即可横向扩展。作为现代 Web 开发首选,它兼顾安全与极速体验,助您快速构建企业级应用。 下载 PostgreSQL 用户注意:
$table->string('email')->unique()
在 PG 中会触发
index row size exceeds maximum
,必须改成
$table->string('email', 255)->unique()
已有
users
表且字段不全(比如缺
email_verified_at
):Breeze 的迁移会重复添加字段,直接报 SQL 错误;开发环境建议删表重迁,或手动编辑迁移文件
.env
里
DB_PASSWORD
是空字符串?MySQL 8.0+ 默认禁用空密码,连不上就会报
SQLSTATE[HY000] [1045] Access denied
登录后跳转不到预期页面?先查
RouteServiceProvider::HOME
登录成功默认跳
/dashboard
,这个路径由
RouteServiceProvider::HOME
常量控制,不是硬编码在中间件里。 想改成首页?改
app/Providers/RouteServiceProvider.php
里的
const HOME = '/';
改完别忘了同步更新
resources/views/layouts/app.blade.php
里导航栏的
href="{{ route('dashboard') }}"
,否则菜单点开会 404 如果用了自定义路由名(比如
Route::get('/profile', ...)->name('user.profile')
),
route()
辅助函数必须匹配新名字,不能只改常量 最容易被忽略的是:Breeze 不自动启用邮箱验证流程,哪怕你配置了
MAIL_MAILER
,
RegisterController
也不会发验证邮件——得手动在
RegisterRequest
或
RegisteredUserController
里加逻辑,否则
email_verified_at
字段永远为 null。

相关文章