diff --git a/src/Commands/stubs/routes/api.stub b/src/Commands/stubs/routes/api.stub index 0d427d3b5..bd71ff0fe 100644 --- a/src/Commands/stubs/routes/api.stub +++ b/src/Commands/stubs/routes/api.stub @@ -4,5 +4,5 @@ use Illuminate\Support\Facades\Route; use $MODULE_NAMESPACE$\$STUDLY_NAME$\$CONTROLLER_NAMESPACE$\$STUDLY_NAME$Controller; Route::middleware(['auth:sanctum'])->prefix('v1')->group(function () { - Route::apiResource('$LOWER_NAME$', $STUDLY_NAME$Controller::class)->names('$LOWER_NAME$'); + Route::apiResource('$PLURAL_LOWER_NAME$', $STUDLY_NAME$Controller::class)->names('$LOWER_NAME$'); }); diff --git a/src/Commands/stubs/routes/web.stub b/src/Commands/stubs/routes/web.stub index 94ef53fee..2da42a169 100644 --- a/src/Commands/stubs/routes/web.stub +++ b/src/Commands/stubs/routes/web.stub @@ -4,5 +4,5 @@ use Illuminate\Support\Facades\Route; use $MODULE_NAMESPACE$\$STUDLY_NAME$\$CONTROLLER_NAMESPACE$\$STUDLY_NAME$Controller; Route::middleware(['auth', 'verified'])->group(function () { - Route::resource('$LOWER_NAME$', $STUDLY_NAME$Controller::class)->names('$LOWER_NAME$'); + Route::resource('$PLURAL_LOWER_NAME$', $STUDLY_NAME$Controller::class)->names('$LOWER_NAME$'); }); diff --git a/src/Generators/ModuleGenerator.php b/src/Generators/ModuleGenerator.php index be9f8dd23..59ef73ca9 100644 --- a/src/Generators/ModuleGenerator.php +++ b/src/Generators/ModuleGenerator.php @@ -468,9 +468,16 @@ protected function getReplacement($stub): array { $replacements = $this->module->config('stubs.replacements'); + // Temporarily check if the replacements are defined; remove in the next major version. if (! isset($replacements['composer']['APP_FOLDER_NAME'])) { $replacements['composer'][] = 'APP_FOLDER_NAME'; } + if (! isset($replacements['routes/web']['PLURAL_LOWER_NAME'])) { + $replacements['routes/web'][] = 'PLURAL_LOWER_NAME'; + } + if (! isset($replacements['routes/api']['PLURAL_LOWER_NAME'])) { + $replacements['routes/api'][] = 'PLURAL_LOWER_NAME'; + } if (! isset($replacements[$stub])) { return []; diff --git a/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_api_route_file__1.txt b/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_api_route_file__1.txt index 2656f6fad..9db2e19dc 100644 --- a/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_api_route_file__1.txt +++ b/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_api_route_file__1.txt @@ -4,5 +4,5 @@ use Illuminate\Support\Facades\Route; use Modules\Blog\Http\Controllers\BlogController; Route::middleware(['auth:sanctum'])->prefix('v1')->group(function () { - Route::apiResource('blog', BlogController::class)->names('blog'); + Route::apiResource('blogs', BlogController::class)->names('blog'); }); diff --git a/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_api_route_file_with_multi_segment_default_namespace__1.txt b/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_api_route_file_with_multi_segment_default_namespace__1.txt index 48de630b4..b591bbb36 100644 --- a/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_api_route_file_with_multi_segment_default_namespace__1.txt +++ b/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_api_route_file_with_multi_segment_default_namespace__1.txt @@ -4,5 +4,5 @@ use Illuminate\Support\Facades\Route; use Custom\Modules\Blog\Http\Controllers\BlogController; Route::middleware(['auth:sanctum'])->prefix('v1')->group(function () { - Route::apiResource('blog', BlogController::class)->names('blog'); + Route::apiResource('blogs', BlogController::class)->names('blog'); }); diff --git a/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_web_route_file__1.txt b/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_web_route_file__1.txt index 41c4f8cd1..e4bdc728e 100644 --- a/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_web_route_file__1.txt +++ b/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_web_route_file__1.txt @@ -4,5 +4,5 @@ use Illuminate\Support\Facades\Route; use Modules\Blog\Http\Controllers\BlogController; Route::middleware(['auth', 'verified'])->group(function () { - Route::resource('blog', BlogController::class)->names('blog'); + Route::resource('blogs', BlogController::class)->names('blog'); }); diff --git a/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_web_route_file_with_multi_segment_default_namespace__1.txt b/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_web_route_file_with_multi_segment_default_namespace__1.txt index 6bca98189..65f996120 100644 --- a/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_web_route_file_with_multi_segment_default_namespace__1.txt +++ b/tests/Commands/Make/__snapshots__/ModuleMakeCommandTest__test_it_generates_web_route_file_with_multi_segment_default_namespace__1.txt @@ -4,5 +4,5 @@ use Illuminate\Support\Facades\Route; use Custom\Modules\Blog\Http\Controllers\BlogController; Route::middleware(['auth', 'verified'])->group(function () { - Route::resource('blog', BlogController::class)->names('blog'); + Route::resource('blogs', BlogController::class)->names('blog'); });