Route [RemindersController @ postRemind] не определена ошибка в Laravel4

1

Я реализовал пароль Laravel напомнил, но нажав эту ошибку:

Route [RemindersController@postRemind] не определен.

Я использую Laravel 4 и абсолютно новый для Laravel.I использовал

php artisan auth:reminders-controller

для создания RemindersController.

   <?php

   class RemindersController extends Controller {

  public function getRemind()
  {
    return View::make('password_remind');
  }

public function postRemind()
{

   Password::remind(Input::only('email'), function($message)
  {
     $message->subject('Password Reminder');
  });                
}

public function getReset($token = null)
{
    if (is_null($token)) App::abort(404);

    return View::make('password.reset')->with('token', $token);
}

public function postReset()
{
    $credentials = Input::only(
        'email', 'password', 'password_confirmation', 'token'
    );

    $response = Password::reset($credentials, function($user, $password)
    {
        $user->password = Hash::make($password);

        $user->save();
       });

       switch ($response)
       {
        case Password::INVALID_PASSWORD:
        case Password::INVALID_TOKEN:
        case Password::INVALID_USER:
            return Redirect::back()->with('error', Lang::get($response));

        case Password::PASSWORD_RESET:
            return Redirect::to('/');
        }
     }
   }

Я создал вид password_remind.blade.php который показан ниже:

 @extends('layouts.default_layout')
 @section('content')
     <div class="row" style="min-height: 376px">
       <div class="col-sm-4">
       </div>
       <div class="col-sm-4">
       </div>
       <div class="col-sm-4" style="padding-top: 70px;">
        <div class="login">
           <form action="{{action('RemindersController@postRemind')}}" method="POST">
               <input type="email" name="email" placeholder="Email">
                <input type="submit" value="Send">
            </form> 
        </div>
       </div> 
     </div>
 @stop

В корне я добавил Route::get('forgotPassword', 'RemindersController@getRemind'); URL-адрес http://localhost/laravel_work/public/forgetPassword дает

Route [RemindersController@postRemind] не определен

ошибка. Где я ошибаюсь? Я не могу найти ошибку. Помогите мне: (*

  • 0
    Попробуйте сделать composer dump .
  • 1
    Извините, я не получил вас. Вы можете сделать это более понятным ??? :(
Теги:
laravel-4
forgot-password

1 ответ

2
Лучший ответ

Welp, если вы посмотрите на свою форму, у вас есть action="{{action('RemindersController@postRemind')}}"

Но, по вашему мнению, единственный добавленный вами маршрут - RemindersController@getRemind

Я предполагаю, что вы хотите просто получить возможность быстро проверить представление прямо сейчас, но, возможно, action() действительно ищет этот несуществующий маршрут.

Ваше приложение умирает, когда вы публикуете форму или когда вы получаете представление? В любом случае, определяя маршрут для сообщения, как вы это делали с get, нужно исправить это.

  • 0
    это то, что у вас есть? Route::get('forgotPassword', 'RemindersController@getRemind'); Route::controller('forgotPassword', 'RemindersController');
  • 0
    Я добавил Route :: post ('ForgotPassword / change', 'RemindersController @ postRemind'); в маршруте и изменил действие на action = "{{URL :: to ('ForgotPassword / change')}}". Теперь ошибка ушла. :)
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню