我想从控制器中手动向特定用户(不是当前登录的用户)发送密码重置请求.我在Laravel代码中做了一些挖掘,似乎我应该在ResetsPasswords中调用postEmail(Request $request),但我似乎不知道如何访问正确的PasswordController实例来调用它.

推荐答案

Why not just something like this for your controller:

<?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)]);
        }
    }
}

你并没有真正解释你想如何发送这封信的上下文,所以要做相应的调整.

Laravel相关问答推荐

CKEditor在laravel中的p标记之前和之后添加额外的p标记

为什么我的 Laravel 开发服务器不提供 public 文件夹下的文件?

Laravel中如何动态更改路由链接?

所有 POST 请求上的 Laravel 4 CSRF

Laravel 中的 index()" 是什么意思?

Lumen和 MongoDB?

磁盘 [视频] 没有配置的驱动程序

刚安装 Lumen 并得到 NotFoundHttpException

Heroku 上的 Laravel 队列工作者

Laravel 5.5 在迁移文件中设置整数字段的大小

Laravel - 如何恢复本地存储符号链接并刷新

Laravel 5 迁移:Schema::table 方法中不同类型的默认长度

artisan 迁移错误找不到类'Doctrine\\DBAL\\Driver\\PDOMySql\\Driver'

中间件中的 Laravel 依赖注入

Heroku CLI 安装错误:PATH 未更新,原始长度 1585 > 1024

Laravel db 迁移 - renameColumn 错误 - 请求了未知的数据库类型枚举

Laravel 接口

无法在控制器的构造函数上调用 Auth::user()

在laravel中删除确认

laravel:如何获取 eloquent 模型的列名?