laravel在子文件夹中找不到控制器

时间:2018-08-11 14:28:29

标签: laravel laravel-5 routes

我试图将HomeController放在一个名为Front的文件夹中。这是Laravel 5.6

所以我的控制器的路径是Controllers / Front / HomeController.php

namespace App\Http\Controllers\Front;

use Illuminate\Http\Request;

class HomeController extends Controller
    {

然后在我的路线中,我有这个:

Route::get('/', 'HomeController@index');

如以下Stackoverflow中的建议:Laravel Controller Subfolder routing我试图将控制器添加到子文件夹,然后运行composer dump-autoload,但它不起作用。

有什么建议吗?

2 个答案:

答案 0 :(得分:1)

在控制器字符串中指定前缀:'Front\HomeController@index'https://laravel.com/docs/5.6/controllers#controllers-and-namespaces

或者将您的路线与名称空间为https://stackoverflow.com/a/51800675/7362396https://laravel.com/docs/5.6/routing#route-group-namespaces)的组

答案 1 :(得分:1)

您可以在组中添加所有路由并为其添加前缀

  Route::group(['namespace' => 'Front'], function () {
        Route::get('/', 'HomeController@index');

 });