0

我正在做一个简单的应用程序 laravel 5.1,我想为用户重置密码。我对此没有意见。

我只是还没有找到改变某些文件路径的方法。其中包括文件“password.blade.php”,它是发送到包含令牌链接的用户邮件的文件。这个文件必须在 Resources/views/emails/route。

在此处输入图像描述

是否要更改:文件的名称和路径。? 或者,如果您可以选择要发送的不同视图?

谢谢,任何信息将不胜感激)。

4

1 回答 1

1

PasswordBroker 中有一个 $emailView 变量。

/**
 * The view of the password reset link e-mail.
 *
 * @var string
 */
protected $emailView;

如果您在密码控制器中将此设置为您的视图,您应该能够更改它的路径和名称。

如果它不起作用,您可以覆盖密码控制器中的 emailResetLink 函数并在那里更改视图。这是来自 Laravel 5.2 的版本。如果不同,您可以从 PasswordBroker.php 获得 5.1。

/**
 * Send the password reset link via e-mail.
 *
 * @param  \Illuminate\Contracts\Auth\CanResetPassword  $user
 * @param  string  $token
 * @param  \Closure|null  $callback
 * @return int
 */
public function emailResetLink(CanResetPasswordContract $user, $token, Closure $callback = null)
{
    // We will use the reminder view that was given to the broker to display the
    // password reminder e-mail. We'll pass a "token" variable into the views
    // so that it may be displayed for an user to click for password reset.
    $view = $this->emailView;

    return $this->mailer->send($view, compact('token', 'user'), function ($m) use ($user, $token, $callback) {
        $m->to($user->getEmailForPasswordReset());

        if (! is_null($callback)) {
            call_user_func($callback, $m, $user, $token);
        }
    });
}
于 2016-02-11T04:32:55.557 回答