我使用laravel 5.6,并成功地将视图作为电子邮件发送。
我使用以下代码:
Mail::to($user->email)->send(new Welcome($user));
我唯一的问题是密码重置。我知道我可以自定义一点模板,但是如何覆盖默认的电子邮件模板并发送我自己的视图?
我尝试写我自己的ResetPassword通知:
<?php
namespace App\Notifications;
use Illuminate\Auth\Notifications\ResetPassword;
use Illuminate\Notifications\Messages\MailMessage;
class ResetPasswordNotification extends ResetPassword
{
/**
* Build the mail representation of the notification.
*
* @param mixed $notifiable
* @return \Illuminate\Notifications\Messages\MailMessage
*/
public function toMail($notifiable)
{
if (static::$toMailCallback) {
return call_user_func(static::$toMailCallback, $notifiable, $this->token);
}
return (new MailMessage)
->line('Vous recevez cet email car une demande de modification du mot de passe pour votre compte a été initialisée.')
->action('Réinitialiser le mot de passe', url(config('app.url').route('password.reset', $this->token, false)))
->line('Si vous n\'êtes pas à l\'origine de cette demande, merci de contacter l\'équipe du site.');
}
}
但我只能翻译电子邮件。我想要的是根据我自己的模板发送我自己的视图。
可能吗?
谢谢你的帮助。
您可以使用MailMessage
定义自己的视图
示例:
return (new MailMessage)->view(
'your.email.blade', [
'data' => $data
]
);
看见https://laravel.com/docs/5.6/notifications#mail-更多信息的通知。
编辑:
由于您正在使用密码重置通知,您需要首先找到用户。我相信toMail
中的$通知的
对象应该是CanResetPassword
特性的实例,所以您必须使用电子邮件查找用户:
public function toMail($notifiable) {
{
$email = $notifiable->getEmailForPasswordReset();
$user = User::where('email', '=', $email)->first();
return (new MailMessage)->view(
'your.email.blade', [
'user' => $user,
]
);
}
我正在尝试在Laravel中自定义密码重置电子邮件。 我必须重写此函数: 这是我的尝试: 我得到这个错误: Illumb\Foundation\Auth\User::sendPasswordResetNotification($token,Illumb\Http\Request$Request)的声明必须与Illumb\Contracts\Auth\CanResetPassword::sendPa
我有一个插件管理我的货件与两个自定义状态:等待-装运和装运。 我尝试添加一个电子邮件发送时,订单传递到发货。 我在Stack Overflow:Woocommerce退款电子邮件中发现了这一点,但我可以知道它是如何工作的 下面是我的插件文件代码: 我用下面的helgatheviking和Adrien Leber的建议更新了我的代码 和我的班级: 当我改变我的订单状态时,什么也没有发生!我的触发函数
我试图发送电子邮件使用Nodejs包Nodemailer,但我无法更改从电子邮件到我的自定义域电子邮件。任何帮助都将不胜感激。这是我用来发送电子邮件的代码。
我正在研究AWS Cognito,下面是关于消息定制的两个问题。 1) 我正在使用“链接”验证类型为“电子邮件验证消息”编写AWS Cognito。我遇到了一个问题,“电子邮件消息”使其动态。 2)如何根据用户组或有条件地发送不同的“电子邮件消息”内容? 请建议。 谢啦
问题内容: 因此,我已经发现了一些问题,这些问题表明您必须重写getAuthPassword()才能从数据库提供密码列的自定义名称。试图将此方法与数据库中的列同名,但没有起作用。它仍然会发生以下错误:未定义的索引:密码。 这是身份验证: 试图在表格和控制器中都将user_password更改为密码,但无效。 所以问题是,如果我在数据库中有一个名为“ user_password”的列,是否可以使Au