Add translation CRUD routes and controller

POST/DELETE for translations gated by can:update,document middleware.
Locale validated against SUPPORTED_LOCALES. Default-locale deletion
returns 422; duplicate-locale add returns 422. Flash messages added
to en/ja lang files (other locales updated in Task 9).
This commit is contained in:
Yutaka Kurosaki
2026-05-10 12:28:25 +09:00
parent 6d71f5fecf
commit 187349521d
5 changed files with 161 additions and 0 deletions
+9
View File
@@ -47,6 +47,15 @@
Route::get('/{document}/edit', DocumentEditor::class)
->middleware('can:update,document')
->name('edit');
Route::post('/{document}/translations', [\App\Http\Controllers\DocumentTranslationController::class, 'store'])
->middleware('can:update,document')
->name('translations.store');
Route::delete('/{document}/translations/{locale}', [\App\Http\Controllers\DocumentTranslationController::class, 'destroy'])
->middleware('can:update,document')
->name('translations.destroy');
Route::get('/{document}/translations/{locale}/edit', \App\Livewire\DocumentEditor::class)
->middleware('can:update,document')
->name('translations.edit');
});
// 公開ルート(動的ルートは最後に)