Laravel - Как передать переменную для сброса шаблона пароля?
Я реализовал функцию сброса пароля с Laravel 5
и получать электронную почту. Теперь, как передать некоторые переменные данные в мой шаблон электронной почты для отображения дополнительной информации о пользователе.
/**
* Send a reset link to the given user.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function postEmail(Request $request)
{
//echo Input::get('ID'); die;
$this->validate($request, ['ID' => 'required|email']);
$UserProduct = "Sample 1"; // I want to pass this variable to my password.blade.php
$response = Password::sendResetLink($request->only('ID'), function (Message $message) {
$message->subject($this->getEmailSubject());
});
switch ($response) {
case Password::RESET_LINK_SENT:
return redirect()->back()->with('status', trans($response));
case Password::INVALID_USER:
return redirect()->back()->withErrors(['ID' => trans($response)]);
}
}
Я хочу напечатать $UserProduct = "Sample 1";
на мой шаблон электронной почты, но не знаю, как перейти к password.blade
стр.
Любая идея?
Благодарю.
1 ответ
Решение
sendResetLink
не может правильно отправить больше данных, как обычное электронное письмо в laravel.
Вы можете обойти это, используя композитор вида, что-то вроде этого:
$UserProduct = "Sample 1";
$infoArray = [1,2,3,4];
view()->composer('emails.auth.password', function($view) use ($UserProduct, $infoArray) {
$view->with([
'UserProduct' => $UserProduct,
'info' => $infoArray,
'more' => 'Even more info',
]);
});
$response = Password::sendResetLink($request->only('ID'), function (Message $message) {
$message->subject($this->getEmailSubject());
});