Laravel路由返回错误:"类LoginController不存在"

时间:2015-01-03 09:33:54

标签: php laravel

我尝试使用Laravel和Blade创建一个"创建用户" -form。

我的表格如下:

{{ Form::open(['route' => 'create_user']) }}

<table>
    <tr>
        <td>
            {{ Form::label('email', 'Email:') }}
        </td>
        <td>
            {{ Form::email('email') }}
        </td>
    </tr>
    <tr>
        <td>
            {{ Form::label('password', 'Password:') }}
        </td>
        <td>
            {{ Form::password('password') }}
        </td>
    </tr>
    <tr>
        <td colspan="2">
            {{ Form::submit('Submit') }}
        </td>
    </tr>
</table>

{{ Form::close() }}

&#39; create_user&#39; name指的是以下路径:

Route::post('user/new', array('as' => 'create_user', 'uses' => 'LoginController@store'));

我有一个名为&#39; LoginController.php&#39;的.php文件。功能:

public function store()
{


    if (Auth::attempt(Input::only('email', 'password'))) {
        return Auth::user();
    }

    return "Failed.";
}

我的路由表如下所示:

Routing table

但是当我提交包含有效数据的表单时,我收到错误消息:

Error

我已经尝试过运行&#34; php artisan dump-autoload&#34;,但它并没有改变任何东西。

编辑:根据请求添加完整的LoginController.php。 (原谅缺少缩进。)

<?php
namespace app\controllers;

class LoginController extends \BaseController
{

public function create()
{

}

public function store()
{


    if (Auth::attempt(Input::only('email', 'password'))) {
        return Auth::user();
    }

    return "Failed.";
}
}

2 个答案:

答案 0 :(得分:1)

问题在于您已将控制器放入命名空间(app\controllers

您必须将其删除或调整路线:

Route::post('user/new', array(
    'as' => 'create_user',
    'uses' => 'app\controllers\LoginController@store'
));

答案 1 :(得分:0)

在路线中,我总是使用资源。它为您处理方法。

Route::resource('yourRoute', 'YourController');