【发布时间】:2016-09-16 05:55:58
【问题描述】:
加载路由 /users 或 /user/add 时出现问题并返回错误;
Route.php 第 280 行中的反射异常:类 App\Http\Controllers\App\Controllers\UserController 不存在
UserController 确实存在,但它不在我的控制器文件夹中的文件夹中。
我的路线文件;
Route::group(['middleware' => 'auth'], function(){
Route::get('/route/selector', 'PagesController@selectRoute');
// Admin Only //
Route::group(['middleware' => 'isAdmin'], function(){
Route::get('/admin', 'AdminController@index');
Route::get('/users', 'UserController@index');
Route::get('/user/add', 'UserController@getAdd');
Route::post('/user/add', 'UserController@postAdd');
Route::get('/user/edit/{id}', 'UserController@getEdit');
Route::post('/user/edit/{id}', 'UserController@postEdit');
Route::get('/user/delete/{id}', 'UserController@delete');
});
});
我的用户控制器;
<?php
namespace App\Http\Controllers;
use App\Http\Requests;
use App\User;
use App\UserTypes;
use Auth;
use Hashids;
use Redirect;
use Request;
use Hash;
class UserController extends Controller
{
public function index(){
$users = User::get();
return view('users.index', compact('users'));
}
public function getAdd(){
$user_type = UserTypes::pluck('user_type', 'id');
return view('users.add', compact('user_type'));
}
public function postAdd(){
$input = Request::all();
$password = str_random(8);
User::create(
'email' => $input['email'],
'password' => Hash::make($password),
'first_name' => $input['first_name'],
'surname' => $input['surname'],
'phone_number' => $input['phone_number'],
'user_type' => $input['user_type'],
);
return Redirect::action('UserController@index');
}
public function getEdit($id){
}
public function postEdit($id){
}
public function delete($id){
User::find(current(Hashids::decode($id)))->delete();
return Redirect::action('UserController@index');
}
}
当我删除 User::create();部分错误消失了,和这个有关系吗?
【问题讨论】:
-
尝试运行
composer dumpauto命令。 -
你的
UserController的路径是什么?当您使用namespace App\Http\Controllers时,它必须在app/Http/Controllers目录中 -
感谢两位,作曲家 dumpauto 没有任何区别。控制器也在 app/Http/Controllers 目录中
-
当我删除 User::create();部分错误消失了,这与此有关吗?
-
你错过了顶部类的使用。
标签: php laravel laravel-5.1 laravel-5.2