테넌트 관리 기능 수정 및 ViewServiceProvider 변수명 충돌 해결
주요 변경사항: - Spatie Laravel Permission 패키지 설치 (v6.23.0) - admin 프로젝트에서 필수 Traits 및 Scopes 복사 - ModelTrait, BelongsToTenant, HasTenantFilter, UppercaseAttributes - TenantScope - Tenant 모델 관계 수정 (hasMany → belongsToMany via user_tenants) - Tenant 모델 null 처리 추가 (status_label, created_at) - Laravel 12 bootstrap/app.php에 API 라우트 등록 - API 라우트 미들웨어 수정 (auth:sanctum → web,auth) - HTMX 라이브러리 및 CSRF 토큰 헤더 추가 ViewServiceProvider 수정: - 전역 View Composer의 $tenants 변수를 $globalTenants로 변경 - 페이지별 페이지네이션된 $tenants 변수와의 충돌 방지 - tenant-selector.blade.php에서 $globalTenants 사용 버그 수정: - Collection::hasPages() 오류 해결 (ViewComposer 변수 덮어쓰기 문제) - 테넌트 목록 무한 로딩 스피너 해결 - 500 Internal Server Error 해결
This commit is contained in:
@@ -12,10 +12,14 @@
|
||||
|
|
||||
*/
|
||||
|
||||
Route::middleware('auth:sanctum')->prefix('admin')->name('api.admin.')->group(function () {
|
||||
Route::middleware(['web', 'auth'])->prefix('admin')->name('api.admin.')->group(function () {
|
||||
|
||||
// 테넌트 관리 API
|
||||
Route::prefix('tenants')->name('tenants.')->group(function () {
|
||||
// 고정 경로는 먼저 정의
|
||||
Route::get('/stats', [TenantController::class, 'stats'])->name('stats');
|
||||
|
||||
// 동적 경로는 나중에 정의
|
||||
Route::get('/', [TenantController::class, 'index'])->name('index');
|
||||
Route::post('/', [TenantController::class, 'store'])->name('store');
|
||||
Route::get('/{id}', [TenantController::class, 'show'])->name('show');
|
||||
@@ -25,6 +29,5 @@
|
||||
// 추가 액션
|
||||
Route::post('/{id}/restore', [TenantController::class, 'restore'])->name('restore');
|
||||
Route::delete('/{id}/force', [TenantController::class, 'forceDestroy'])->name('forceDestroy');
|
||||
Route::get('/stats', [TenantController::class, 'stats'])->name('stats');
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user