我在Laravel中获得了一个“路径未定义错误”

时间:2014-11-19 12:36:17

标签: php forms laravel laravel-4 laravel-routing

我已经设置了这样一个表单:

<!--Registration Form-->

    {{ Form::open(array('action' => 'LoginController@try_login', 'class'=>'login_form', 'id'=>'login_reg_form', 'role' => 'form')) }}

        {{ Form::label('email', 'Email Address', array('class' => 'email')); }}

        {{ Form::text('email', 'example@gmail.com', array('class' => 'form-control')) }}

        {{ Form::label('password', 'Password', array('class' => 'password')); }}

        {{ Form::password('password', array('class' => 'form-control')) }}

        {{ Form::submit('Click Me!'); }}

    {{ Form::close() }}

    <!--End Form-->

指向登录控制器。

这是控制器代码:

class LoginController extends BaseController {

    /**
     * Instantiate a new LoginController instance.
     */
    public function __construct()
    {

    }

    /**
     * Try_Login
     */
    public function try_login()
    {
        //Do Authentication - Log the user in.

    }

}

一切似乎都很好,但出于某种原因我得到以下错误:

ErrorException (E_UNKNOWN) 
Route [HomeController@try_login] not defined. (View: /Users/Tapha/../login.blade.php)

1 个答案:

答案 0 :(得分:1)

routes.php中,您必须定义表单可以访问的路径,或者在提交表单时永远不知道该怎么做。仅仅定义Controller@method是不够的。

我认为您通过GET发送了表单,否则您将在表单创建代码中提供'method' => 'post'

Route::get('login', ['uses' => 'HomeController@try_login']);