Приложение на Laravel 10/Vue 3
Создал модуль и в нем пользовательский сервис провайдер. В пройвайдере в соответствии с документацией добавил загрузку маршрутов:
<?php
namespace App\Modules\Orders;
use Illuminate\Support\Facades\Route;
use Illuminate\Support\ServiceProvider;
class OrdersServiceProvider extends ServiceProvider
{
public function boot(): void
{
$this->loadRoutesFrom(realpath(__DIR__ . '/routes/api/orders.php'));
}
}
Файла с маршрутами:
<?php
use App\Modules\Orders\Http\Controllers\OrdersController;
$routingConfig = [
'namespace' => 'App\Modules\Orders\Http\Controllers',
'prefix' => 'api/orders',
'domain' => '',
'middleware' => ['api', 'api.auth', 'api.log', 'api.access', 'api.is_activated'],
];
Route::group($routingConfig, function () {
Route::get('/', [OrdersController::class, 'index'])->name('orders.index');
Route::post('status', [OrdersController::class, 'changeStatus'])->name('orders.change-status');
});
Провайдер зарегистрирован в массиве
providers файла конфигурации
config/app.php.
Команда
php artisan route:list показывает маршруты модуля. Кеш приложения, маршрутов и конфигурации очищен.
Несмотря на все это, не работает - при попытке протестировать маршрут на доступность - возвращается главный шаблон:
Route::any('/{all}', function () {
return view('welcome');
})
->where('all', '^(?!api).*$')
->where('all', '^(?!storage).*$');
Причем, если маршрут определить в файле
routes/api.php - маршрутизация отрабатывает как следует.