Контроллер и маршруты — Laravel 8

#php #laravel #routes #controller

#php #laravel #маршруты #контроллер

Вопрос:

я бы знал, как я могу вставить все свои контроллеры в маршруты без повторного использования …. использовать…

пример:

 <?php use IlluminateSupportFacadesRoute;
      use AppHttpControllersDB;
      use AppHttpControllersDB1;
      use AppHttpControllersDB2;
      use AppHttpControllersDB3;
      use AppHttpControllersDB4;
      use AppHttpControllersDB5;
      use AppHttpControllersDB6;
      etc.....
      Route::get('/', function () {
          return view('welcome');
      });
  

Как я могу вставить много контроллеров только за один раз??
Большое спасибо.

PS DB1, DB2, etcc являются примером XD

Ответ №1:

для работы с web.php routing laravel 8 и в нем так же, как и в предыдущих, вам не нужно импортировать контроллеры. вы можете выполнить следующую работу:

  1. чтобы AppProvidersRouteServiceProvider.php добавить $namespace
 class RouteServiceProvider extends ServiceProvider {
   // add this line
   protected $namespace = 'AppHttpControllers';
}
  
  1. Во-вторых $namespace boot , добавьте метод to RouteServiceProvider :
 public function boot() {
   //...... other codes   

   //add the below code
   $this->routes(function() {
      Route::middlware('web')->namespace($this->namespace);
   });
}
  

Комментарии:

1. Я пробовал ваши решения, но не сработало. Вторые решения это мое последнее решение ахахах

2. Попробуйте перезапустить свой проект, а затем повторно запустите его.

3. Я получаю сообщение об ошибке 404 — Не найдено

Ответ №2:

Вы можете сделать

 use AppHttpControllers{DB, DB1, DB2, ...};
  

Дополнительная ссылка здесь

Комментарии:

1. Спасибо, я попробую, но я бы не стал писать все контроллеры вручную, ахахах. Нет способа вызвать весь файл в папке контроллеров?