2017-03-14 27 views
3

私はLaravel 5.4アプリケーションを持っています。私はすべてのユーザーを見ることができる私の管理領域にビューを持っています。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); 

    } 

を打つ私は精通していないよ。私は、次のしている私の見解で

Laravelsのデフォルトのパスワードリセット機能により、私はおそらくオフですが、次のエラーが表示されます。

Argument 1 passed to Illuminate\Auth\Passwords\PasswordBroker::sendResetLink() must be of the type array, string given,

+0

あなたは資格証明書の配列ではなく文字列で渡す必要があります。 – Ian

+0

これは送信パスワードリセット機能の場合、@ Ianさんのお世話になりました。なぜ、パスワードを渡す必要がありますか?確かにこれはユーザーによってリセットされていますか? –

+0

パスワードを渡す必要はありません。 – Ian

答えて

9

あなたはキーとしてemailで配列を送信する必要があります。

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

5.2よりもはるかに簡単です! – Ligemer