laravel-4 – Laravel:控制器不存在
发布时间:2020-12-14 19:36:33 所属栏目:大数据 来源:网络整理
导读:我在/ app / controllers / admin /文件夹中添加了新控制器,并在/app/routes.php文件中添加了路由.然后我运行以下命令来自动加载它们 php artisan dump-autoload 我收到以下错误 Mcrypt PHP extension required. 我按照https://askubuntu.com/questions/4608
我在/ app / controllers / admin /文件夹中添加了新控制器,并在/app/routes.php文件中添加了路由.然后我运行以下命令来自动加载它们
php artisan dump-autoload 我收到以下错误 Mcrypt PHP extension required. 我按照https://askubuntu.com/questions/460837/mcrypt-extension-is-missing-in-14-04-server-for-mysql给出的指令,能够解决mcrypt问题. 之后,我运行php artisan dump-autoload命令,但仍然出现以下错误 {"error":{"type":"ReflectionException","message":"Class CoursesController does not exist","file":"/var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php","line":504}} 这是我的routes.php文件的代码 Route::group(array('before' => 'adminauth','except' => array('/admin/login','/admin/logout')),function() { Route::resource('/admin/courses','CoursesController'); Route::resource('/admin/teachers','TeachersController'); Route::resource('/admin/subjects','SubjectsController'); }); 这是CoursesController.php文件的代码 <?php class CoursesController extends BaseController { public function index() { $courses = Course::where('is_deleted',0)->get(); return View::make('admin.courses.index',compact('courses')); } public function create() { return View::make('admin.courses.create'); } public function store() { $validator = Validator::make($data = Input::all(),Course::$rules); if ($validator->fails()) { $messages = $validator->messages(); $response = ''; foreach ($messages->all(':message') as $message) { $response = $message; } return Response::json(array('message'=>$response,'status'=>'failure')); } else { Course::create($data); return Response::json(array('message'=>'Course created successfully','status'=>'success')); } } public function edit($id) { $course = Course::find($id); return View::make('admin.courses.edit',compact('course')); } public function update($id) { $course = Course::findOrFail($id); $validator = Validator::make($data = Input::all(),Course::editRules($id)); if ($validator->fails()) { $messages = $validator->messages(); $response = ''; foreach ($messages->all(':message') as $message) { $response = $message; } return Response::json(array('message'=>$response,'status'=>'failure')); } else { $course->update($data); return Response::json(array('message'=>'Course updated successfully','status'=>'success')); } } public function destroy($id) { Course::findOrFail($id)->update(array('is_deleted' => '1')); return Response::json(array('message'=>'Course deleted successfully','status'=>'success')); } } 解决方法
您是否将自动加载类图添加到composer.json文件中?
打开您的composer.json文件并添加 "autoload": { "classmap": [ "app/controllers/admin",] } 如果在控制器中添加文件夹,则需要将其添加到composer.json文件中.然后跑 composer dumpautoload 或替代 转到app / start / global.php并添加 ClassLoader::addDirectories(array( app_path().'/controllers/admin',)); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |