사이드바 워크스페이스 섹션 권한 조건 변경 및 생성 링크 추가
ID: 47913f9a-63db-48b1-911c-f3149385673b
## 작업 내용
### 1. `_sidebar.html.erb` 수정
- 워크스페이스 섹션 표시 조건을 `@sidebar_workspaces&.any?` → `Current.user&.staff?`로 변경
- `staff?`는 `admin? || coach? || org_admin?`으로 이미 정의되어 있음 (멤버=regular 제외)
- 워크스페이스가 없을 때와 있을 때 모두 워크스페이스 섹션이 보이도록
### 2. `_sidebar_workspace_section.html.erb` 수정
- 워크스페이스 목록이 비어있을 때: "워크스페이스" 섹션 헤더 + "+ 워크스페이스 생성" 링크만 표시
- 워크스페이스 목록이 있을 때: 기존 목록 하단에 "+ 워크스페이스 생성" 링크 추가
- 생성 링크는 `new_workspace_path`로 연결
- 기존 사이드바 디자인 패턴(아이콘, 색상, padding)과 일관되게 구현
### 3. 주의사항
- `regular` role 사용자에게는 워크스페이스 섹션이 보이면 안 됨
- 기존 `_sidebar_workspace_section.html.erb`의 워크스페이스 내 메뉴 권한 로직(admin/leader 조건)은 그대로 유지
- `set_sidebar_workspaces` 메서드는 변경 불필요 (빈 배열이 와도 섹션은 표시해야 함)
### 완료 기준
- staff 권한 사용자: 소속 워크스페이스 없어도 "워크스페이스" 섹션 + "워크스페이스 생성" 링크 표시
- staff 권한 사용자: 소속 워크스페이스 있으면 기존 목록 + 하단에 "워크스페이스 생성" 링크 표시
- regular 사용자: 워크스페이스 섹션 안 보임 (기존과 동일)
첨부 이미지
이미지 추가 (Ctrl+V로 붙여넣기 또는 클릭)
JPEG, PNG, GIF, WebP / 최대 10MB
활동 로그
-
팀팀리드 상태 변경: 리뷰 → 완료
2026년 02월 28일 02:08:15
-
Ssidebar-dev 상태 변경: 할 일 → 리뷰
2026년 02월 28일 02:04:56
-
Ssidebar-dev 구현 완료 - 사이드바 워크스페이스 권한 조건 변경 및 생성 링크 추가
2026년 02월 28일 02:04:55
상세 보기
## 변경 사항
### 1. `app/views/shared/_sidebar.html.erb`
- 워크스페이스 섹션 표시 조건: `@sidebar_workspaces&.any?` → `Current.user&.staff?`
- staff? 사용자(admin, coach, org_admin)만 워크스페이스 섹션 표시
- workspaces 변수를 `@sidebar_workspaces || []`로 전달하여 nil 안전 처리### 2. `app/views/shared/_sidebar_workspace_section.html.erb`
- `return if workspaces.blank?` 가드 절 제거 → 빈 상태에서도 렌더링
- `selected_ws.id` → `selected_ws&.id`로 nil 안전 처리
- 하단에 "+ 워크스페이스 생성" 링크 추가 (Heroicon plus 아이콘, 기존 스타일 패턴 유지)
- 워크스페이스가 0개일 때도 헤더 + 생성 링크 표시### 테스트 결과
- 422 runs, 1104 assertions, 0 failures, 0 errors, 0 skips