我有这条消息,试图运行任何控制器
Symfony \ Component \ HttpKernel \ Exception \ NotFoundHttpException
找不到控制器方法。
我的路线文件中有此代码
Route::controller("/","HomeController");
Route::controller("users","UsersController");
和我的控制器中的代码
<?php
class UsersController extends BaseController
{
protected $layout = "layouts.main";
public function __construct()
{
$this->beforeFilter('csrf', array('on' => 'post'));
$this->beforeFilter('auth', array('only' => array('getDashboard')));
}
public function getIndex()
{
return Redirect::to("users/register");
}
public function getRegister()
{
$this->layout->content = View::make('users.register');
}
public function postCreate()
{
$validator = Validator::make(Input::all(), User::$rules);
if ($validator->passes()) {
// validation has passed, save user in DB
$user = new User;
$user->firstname = Input::get('firstname');
$user->lastname = Input::get('lastname');
$user->email = Input::get('email');
$user->password = Hash::make(Input::get('password'));
$user->save();
return Redirect::to('users/login')->with('message', 'Thanks for registering!');
} else {
return Redirect::to('users/register')->with('message', 'The following errors occurred')->withErrors($validator)->withInput();
}
}
function getLogin()
{
if (Auth::check()) return Redirect::to("users/dashboard")->with('message', 'Thanks for registering!');
$this->layout->content = View::make("users.login");
}
function postSignin()
{
if (Auth::attempt(array('email' => Input::get('email'), 'password' => Input::get('password')))) {
return Redirect::to('users/dashboard')->with('message', 'You are now logged in!');
} else {
return Redirect::to('users/login')
->with('message', 'Your username/password combination was incorrect')
->withInput();
}
}
public function getDashboard()
{
$this->layout->content = View::make("users.dashbord");
}
public function getLogout()
{
Auth::logout();
return Redirect::to('users/login')->with('message', 'Your are now logged out!');
}
抱怨我运行此命令
php artisan routes
+--------+------------------------------------------------------------+------+-------------------------------+----------------+---------------+ | Domain | URI | Name | Action | Before Filters | After Filters | +--------+------------------------------------------------------------+------+-------------------------------+----------------+---------------+ | | GET index/{one?}/{two?}/{three?}/{four?}/{five?} | | HomeController@getIndex | | | | | GET / | | HomeController@getIndex | | | | | GET {_missing} | | HomeController@missingMethod | | | | | GET users/index/{one?}/{two?}/{three?}/{four?}/{five?} | | UsersController@getIndex | | | | | GET users | | UsersController@getIndex | | | | | GET users/register/{one?}/{two?}/{three?}/{four?}/{five?} | | UsersController@getRegister | | | | | POST users/create/{one?}/{two?}/{three?}/{four?}/{five?} | | UsersController@postCreate | | | | | GET users/login/{one?}/{two?}/{three?}/{four?}/{five?} | | UsersController@getLogin | | | | | POST users/signin/{one?}/{two?}/{three?}/{four?}/{five?} | | UsersController@postSignin | | | | | GET users/dashboard/{one?}/{two?}/{three?}/{four?}/{five?} | | UsersController@getDashboard | | | | | GET users/logout/{one?}/{two?}/{three?}/{four?}/{five?} | | UsersController@getLogout | | | | | GET users/{_missing} | | UsersController@missingMethod | | | +--------+------------------------------------------------------------+------+-------------------------------+----------------+---------------+
抱怨我试图访问localhost:8000/users/login
或任何控制器中的任何方法
此消息出现
Symfony \ Component \ HttpKernel \ Exception \ NotFoundHttpException
Controller method not found.
答案 0 :(得分:18)
尝试更改路线注册的顺序
Route::controller("users","UsersController");
Route::controller("/","HomeController");