为了账号安全,请及时绑定邮箱和手机立即绑定

Laravel验证邮件预览,渲染验证邮件

Laravel验证邮件预览,渲染验证邮件

PHP
墨色风雨 2023-08-11 16:53:04
对于 Laravel 项目,我想查看验证电子邮件、电子邮件的外观。我确实运行php artisan vendor:publish --tag=laravel-mail并在文档中找到了:有时您可能希望捕获可邮寄邮件的 HTML 内容而不发送它。为此,您可以调用可邮寄的 render 方法。此方法将以字符串形式返回可邮寄的评估内容:$invoice = App\Invoice::find(1);return (new App\Mail\InvoicePaid($invoice))->render();是否可以对确认电子邮件、电子邮件执行类似的操作?我在我的项目中搜索 Mailable 但没有结果。有其他方法可以查看电子邮件而不发送邮件吗?
查看完整描述

2 回答

?
慕的地8271018

TA贡献1796条经验 获得超4个赞

选项 1 - 在浏览器中预览


添加一条新路线,最好只是在测试设置中,如下所示:


Route::get( '/verify-test', function () {

    // Get a user for demo purposes

    $user = App\User::find(1);

    return (new Illuminate\Auth\Notifications\VerifyEmail())->toMail($user);

}

在我对 Laravel 7 的测试中,这已经足够了。我不必发布任何通知。它在浏览器中渲染得很好!当然,如果您还想更改通知的内容,最好这样做:


php artisan vendor:publish --tag=laravel-notifications

通知的内容在文件中resources/views/vendor/notifications

Laravel 通知文档

选项 2 - 获取邮件

您始终可以做的是将 mailtrap.io 帐户设置为 smtp 服务器并在那里查看邮件,或者使用文档中所述的“通用收件人” :


// config/mail.php

'to' => [

    'address' => 'example@example.com',

    'name' => 'Example'

],


查看完整回答
反对 回复 2023-08-11
?
白猪掌柜的

TA贡献1893条经验 获得超10个赞

说实话?是的,您可以添加路由并使其只能在本地访问,但为什么这么麻烦呢?

Laravel 已经构建了一个名为Laravel Telescope的工具。只需使用 Composer 安装,--dev仅添加用于开发即可完成。设置您的邮件驱动程序log并进行检查,而无需修改路线或其他任何内容。

如果您希望测试邮件而无需一直注册,请创建一个工厂来生成和模拟电子邮件并使用Tinker或更好的Tinkerwell来加快您的开发过程。


查看完整回答
反对 回复 2023-08-11
  • 2 回答
  • 0 关注
  • 70 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信