【问题标题】:Laravel 5.4 Password ResetLaravel 5.4 密码重置
【发布时间】:2017-08-04 16:07:39
【问题描述】:

我有一个 Laravel 5.4 应用程序,并且我的管理区域中有一个视图,可以让我查看所有用户。

我想创建一个函数,允许我单击后端的按钮,自动发送默认 Laravel 密码重置功能。

在我看来,我有以下几点:

<table class="table table-hover">
                        <thead>
                            <th>#</th>
                            <th>Company</th>
                            <th>Name</th>
                            <th>Email Address</th>
                            <th>Action</th>
                        </thead>
                        <tbody>
                            @foreach(\App\User::all() as $c)
                                <tr>
                                    <td>{{ $c->id }}</td>
                                    <td>{{ $c->company->company_name }}</td>
                                    <td>{{ $c->name }}</td>
                                    <td>{{ $c->email }}</td>
                                    <td><a href="/admin/user/{{ $c->id }}/password/reset">Password Reset</a></td>
                                </tr>
                            @endforeach
                        </tbody>
                    </table>

在链接上点击重置密码,目前通过我的路线点击以下功能

public function passwordReset($id)
    {

        $user = User::FindOrFail($id);

        Password::sendResetLink($user->email);

    }

我不熟悉 Laravel 的默认密码重置功能,所以我可能不太了解,但我收到以下错误:

参数 1 传递给 Illuminate\Auth\Passwords\PasswordBroker::sendResetLink() 必须是 类型数组,给定字符串,

【问题讨论】:

  • 您需要传入一个凭据数组,而不是字符串。
  • 感谢@Ian 如果这是一个发送密码重置功能,为什么我需要传递密码?确定这是由用户重置的吗?
  • 您不需要传递密码。

标签: php laravel laravel-5


【解决方案1】:

你需要发送一个以email为key的数组:

Password::sendResetLink(['email' => $user->email]);

【讨论】:

  • 比 5.2 容易多了!!
猜你喜欢
  • 2019-07-21
  • 1970-01-01
  • 2017-08-31
  • 2018-01-29
  • 1970-01-01
  • 1970-01-01
  • 2019-03-26
  • 2018-03-27
  • 2017-12-07
相关资源
最近更新 更多