我想从控制器内手动向特定用户(不是当前登录的用户)发送密码重置请求。我在 Laravel 代码中做了一些挖掘,看来我应该调用postEmail(Request $request)
in ResetsPasswords
,但我似乎不知道如何访问右侧PasswordController
实例来调用它。
为什么不为你的控制器做这样的事情:
<?php
namespace Illuminate\Foundation\Auth;
use Illuminate\Http\Request;
use Illuminate\Mail\Message;
use Illuminate\Support\Facades\Password;
class YourController extends Controller
{
public function sendEmail()
{
$credentials = ['email' => $email_address];
$response = Password::sendResetLink($credentials, 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(['email' => trans($response)]);
}
}
}
您并没有真正解释您想要如何发送此消息的上下文,因此请进行相应调整。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)