私はeコマースアプリケーションを開発中で、laravelの認証を使用しています。それは私にすべてのlogin/register/resetpasswordロジックとビューを与えます。ログインと登録はうまくいきましたが、リセットビューでエラーが表示されています。ビューをリセットします。Laravelのパスワードリセットエラー
@extends('layouts.app')
@section('content')
<div class="container">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Reset password</div>
<div class="panel-body">
@if (session('status'))
<div class="alert alert-success">
{{ session('status') }}
</div>
@endif
<form class="form-horizontal" role="form" method="POST" action="{{ route('password.request') }}">
{{ csrf_field() }}
<input type="hidden" name="token" value="{{ $token }}">
<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
<label for="email" class="col-md-4 control-label">E-mail</label>
<div class="col-md-6">
<input id="email" type="email" class="form-control" name="email" value="{{ $email or old('email') }}" required autofocus>
@if ($errors->has('email'))
<span class="help-block">
<strong>{{ $errors->first('email') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group{{ $errors->has('password') ? ' has-error' : '' }}">
<label for="password" class="col-md-4 control-label">Password</label>
<div class="col-md-6">
<input id="password" type="password" class="form-control" name="password" required>
@if ($errors->has('password'))
<span class="help-block">
<strong>{{ $errors->first('password') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group{{ $errors->has('password_confirmation') ? ' has-error' : '' }}">
<label for="password-confirm" class="col-md-4 control-label">Confirm password</label>
<div class="col-md-6">
<input id="password-confirm" type="password" class="form-control" name="password_confirmation" required>
@if ($errors->has('password_confirmation'))
<span class="help-block">
<strong>{{ $errors->first('password_confirmation') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary">
Reset password
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection
私がログインしていないよ場合は、私が手:次のコードでトークン:未定義の変数を
<input type="hidden" name="token" value="{{ $token }}">
をしかし、私はログインしていたときに私はエラーはありませんが、単に私をホームページにリダイレクトします。私はそれがミドルウェアのためでなければならないことは分かっていますが、ログに記録されたユーザーが「パスワードリセット」ビューにアクセスできないことは意味がありません。どんなイデオリア?
TL; DR
認証ルート(パスワードのリセット):
Route::group(['namespace' => 'Auth'], function() {
Route::get('/reset', '[email protected]');
});
パスワードのリセット・コントローラ:
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\ResetsPasswords;
class ResetPasswordController extends Controller
{
use ResetsPasswords;
protected $redirectTo = '/home';
public function __construct()
{
$this->middleware('guest');
}
public function getPasswordResetView()
{
return view("auth/passwords/reset");
}
}
まともな回答が必要な場合は、コントローラとルータのコードを追加する必要があります –
パスワードリセットで '$ token'を印刷しましたか? –
私は質問に詳細を追加します – Diego