文件夹中的Laravel控制器 - 路由不起作用

时间:2013-06-22 23:55:13

标签: php laravel laravel-routing

我将名为“LoginController”的Controller放在“login”文件夹中。

class LoginController extends BaseController{
    public $restful = true;
    //log in function
    public function Login(){

        // load the login page
        return View::make('login.login');

    }
}

在路线中,我给出了这个:

Route::get('/',array('uses'=>'login.LoginController@Login'));

也试过

Route::get('/',array('uses'=>'login\LoginController@Login')); 

Route::get('/',array('uses'=>'login\Login@login')); 

上述所有似乎都不起作用,并且给我Class不存在错误。 我对此错误非常沮丧。我在“使用”中访问控制器的方式是否正确?在我开始工作之前,我是否需要做任何其他事情?

任何帮助真的很感激!

4 个答案:

答案 0 :(得分:3)

你需要的只是

Route::get('/',array('uses'=>'LoginController@Login'));

Composer需要在路由中注册此更改,以便dump-autoload composer

php composer.phar dump-autoload

此外,如果您使用laravel 4,则使用

声明其余的控制器
public $restful = true; 

不再有效。

答案 1 :(得分:1)

这经常发生在我身上,只是为了给我一个不同的答案

  

php artisan dump-autoload

享受!

答案 2 :(得分:1)

是的我有同样的问题,我从https://stackoverflow.com/a/31638718/2821049

得到答案
Route::group(['namespace' => 'login'], function(
{
    // Controllers Within The "App\Http\Controllers\login" Namespace
    Route::get('/','LoginController@login');
});

答案 3 :(得分:0)

在课堂上你添加:

namespace App\Http\Controllers\folder;
use App\User;
use App\Http\Controllers\Controller;

并在你打电话的路线中:

Route::get("admin/login","folder\class@NameFunctionInClass");

注意:文件夹是名称文件夹类包含